PythonandEMC 2021-02-24 18:52 采纳率: 0%
浏览 40

这个引用为什么会报错?

from win32com import client as wc
from docx import Document
import docx
from docx.document import Document as _Document
from docx.oxml.text.paragraph import CT_P
from docx.oxml.table import CT_Tbl
from docx.table import _Cell, Table, _Row
from docx.text.paragraph import Paragraph
import easygui

input_doc = easygui.fileopenbox('请选择需要更新的文件')

docxfilename = ''

def doSaveAas():#将选择的doc文件另存为docx文件
    word = wc.Dispatch('Word.Application')
    doc = word.Documents.Open(input_doc)        # 目标路径下的文件
    docxfilename = input_doc + "x"
    doc.SaveAs(docxfilename, 12, False, "", True, "", False, False, False, False)  # 转化后路径下的文件  
    doc.Close()
    word.Quit()
 
doSaveAas()
print(docxfilename)#这里打印出docx的文件目录没有问题


doc = docx.Document(docxfilename)#到这里供docx库使用的时候就会报错
#后面的不写了

报错:docx.opc.exceptions.PackageNotFoundError: Package not found at ''

如果我手动提前把doc另存为docx,并把docx的文件地址写入docxfilename 然后执行调用doc = docx.Document(docxfilename)就没有问题

期待大佬的回答

  • 写回答

1条回答 默认 最新

  • 幻灰龙 2021-02-24 21:34
    关注

    SaveAs的第二个参数是FileFormat,要保存为docx应该指定为16,word的文件格式枚举,请自行搜索,关键字:MSDN word.wdsaveformat

    评论

报告相同问题?

悬赏问题

  • ¥30 计算机硬件实验报告寻代
  • ¥15 51单片机写代码,要求是图片上的要求,请大家积极参与,设计一个时钟,时间从12:00开始计时,液晶屏第一行显示time,第二行显示时间
  • ¥15 用C语言判断命题逻辑关系
  • ¥15 原子操作+O3编译,程序挂住
  • ¥15 使用STM32F103C6微控制器设计两个从0到F计数的一位数计数器(数字),同时,有一个控制按钮,可以选择哪个计数器工作:需要两个七段显示器和一个按钮。
  • ¥15 在yolo1到yolo11网络模型中,具体有哪些模型可以用作图像分类?
  • ¥15 AD9910输出波形向上偏移,波谷不为0V
  • ¥15 淘宝自动下单XPath自动点击插件无法点击特定<span>元素,如何解决?
  • ¥15 曙光1620-g30服务器安装硬盘后 看不到硬盘
  • ¥15 抖音直播广场scheme