PackageNotFoundError: Package not found at ‘*.doc’

我通过python-docx读取一个docx文件,路径确认无误的情况下,还是报错了。上代码:

from docx import Document

path = "E:\\Python\\project\\pro1\\fafa.docx"
doc = Document(path)
for para in doc.paragraphs:
    print(para.text)

for i in range(len(doc.paragraphs)):
    print(str(i), doc.paragraphs[i].text)

tbs = doc.tables
for tb in tbs:
    for row in tb.rows:
        for cell in row.cells:
            print(cell.text)

上错误:

我的这个fafa.docx文件是通过win32com把doc转化为docx的,一直报这个错。

后来我自己通过WPS创建了一个docx,空的,继续运行这个代码,依然报错,我在这个文件中写了几个字,再次运行,成功了。

难道是我通过doc转化成的docx不识别?

先把转化的代码贴上来,找找错误:

# encoding=utf-8

from win32com import client as wc

w = wc.gencache.EnsureDispatch('kwps.application')
doc = w.Documents.Open(r"E:\Python\project\pro1\lala.doc")
doc.SaveAs2(r"E:\Python\project\pro1\fafa.docx", 16) # 问题出在这

其实问题就出在最后一行的第二个参数16上,16代表的存储格式为doc,我应该改成12,12代表的是转存的格式为docx。修改成12后,python-docx就能读取文件了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值