You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

docx2pdf转换出现Com_Error,文件转换后代码中断如何解决?

解决docx2pdf转换时出现Word文件损坏报错的问题

原因排查与解决步骤

1. 检查并修复目标docx文件

  • 手动打开路径下的两个docx文件,确认Word是否提示文件损坏。若提示损坏,使用Word自带修复功能:打开Word → 「文件」→「打开」→ 选中损坏文件 → 点击「打开」按钮旁的下拉箭头 → 选择「打开并修复」。
  • 删除路径下所有以~$开头的Word临时文件,这类文件是Word编辑时生成的缓存文件,docx2pdf扫描路径时可能误将其当作正常docx文件处理,导致报错。

2. 清理残留的Word进程

  • 打开任务管理器,找到所有WINWORD.EXE进程并结束。前一次转换可能未正常关闭Word进程,残留的COM对象会干扰本次调用。
  • 可在代码中添加进程清理逻辑(执行前请保存所有未关闭的Word文档):
    import psutil
    for proc in psutil.process_iter(['name']):
        if proc.info['name'] == 'WINWORD.EXE':
            proc.kill()
    

3. 精准指定转换文件,避免扫描无关文件

不要直接转换整个目录,改为只转换目标docx文件,排除临时文件和非docx文件:

from docx2pdf import convert
import os

target_path = "C:/Users/username/word_automation/"
# 筛选出目录下的有效docx文件
valid_docx = [f for f in os.listdir(target_path) if f.endswith('.docx') and not f.startswith('~$')]
for docx_file in valid_docx:
    convert(os.path.join(target_path, docx_file))

4. 修复依赖或Office安装

  • 卸载重装docx2pdf:
    pip uninstall docx2pdf -y
    pip install docx2pdf
    
  • 修复Microsoft Office:打开控制面板→「程序和功能」→ 找到Microsoft Office→右键→「更改」→ 选择「快速修复」(或「在线修复」),修复Office组件可能存在的异常。

内容的提问来源于stack exchange,提问作者enesert

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 08:01:40