doc转为docx后不能打开,报错:docx.opc.exceptions.PackageNotFoundError: Package not found at
一、报错
docx.opc.exceptions.PackageNotFoundError: Package not found at
二、解决方法
1、参考博文
参照博文: link.
此处需要说明,我的问题并不是他的“其实问题就出在最后一行的第二个参数16上,16代表的存储格式为doc,我应该改成12,12代表的是转存的格式为docx。修改成12后,python-docx就能读取文件了。”
而是原来转换是转为word,但是用的是wps
2、最值得注意的地方
原转换程序:
w = wc.Dispatch('Word.Application') # 实例化
'''win32打开并保存而不能直接保存'''
doc = w.Documents.Open(path_)
doc.SaveAs(path_.split('.')[0] + ".docx", 16) # 必须有参数16,否则会出错.
此处的path_是我自己传入的地址参数
先转换程序为
w = wc.gencache.EnsureDispatch('kwps.application')
doc = w.Documents.Open(path_)
doc.SaveAs2(path_.split('.')[0] + ".docx", 16)
比较:
#原程序
w = wc.Dispatch('Word.Application')
#先程序
w = wc.gencache.EnsureDispatch('kwps.application')
即读取不成功在于用wps读取转为word的文档,因为报错“docx.opc.exceptions.PackageNotFoundError: Package not found at”
总结:注意文件格式的问题,不仅包括后缀也包括使用的软件

本文详细解析了从doc格式转换到docx格式后文件无法正常打开的问题,并提供了有效的解决方案。通过调整转换参数和使用正确的应用程序接口,确保转换后的docx文件能够被python-docx库正确读取。
3134





