想写一个读取doc文档中表格数据,来对文档进行重命名。经查资料,py-docx无法读取doc文档,原因是这种是旧格式。所以,采用pywin32来进行读取。
import win32com.client as win32
word = win32.gencache.EnsureDispatch('Word.Application',)
word.Visible = 0
Ndoc = word.Documents.Add()
doc = word.Documents.Open(file_path)
for t in doc.Tables:
for row in t.Rows:
for cell in row.Cells:
print(cell.Range.Text)
一运行,结果都是一个框一个框:
以为是编码出了问题,在网上找了原因,gbk/utf-8/utf-16,甚至iso-8859-1各种encode/decode,发现能输出一些字符。无奈一decode都是无果。