如何将 XML Word 文档转换为 DOCX?

2023-12-28

我收到了一系列文件夹,其中包含大量 .xml 格式的 Word 文档。它们每个都包含一些 VBA 代码,但所有代码都已经运行过,所以我不需要保留它。

我需要打印每个文件夹中的所有文件,但由于网络上 XML 文件的限制,我无法简单地从 Windows 资源管理器中批量打印它们,因此我需要将它们转换为 .docx(或 .doc)第一的。

我该怎么做呢?我使用 python-docx 尝试了一个简单的 python 脚本:

import os
from docx import Document
folderPath=<folderpath>
fileNamesList=os.listdir(folderPath)
for xmlFileName in fileNamesList:
    currentDoc=Document(os.path.join(folderPath,xmlFileName))
    docxFileName=xmlFileName.replace('.xml','.docx')
    currentDoc.save(os.path.join(folderPath,docxFileName))
    currentDoc.close()

这给出:

docx.opc.exceptions.PackageNotFoundError: Package not found at <first file name>.xml

我猜这是因为 python-docx 并不意味着打开 .xml 文件,但这是一个相当没有受过教育的猜测。搜索这个错误,我所能找到的只是它没有正确安装(据我所知)或使用 .doc 文件而不是 .docx 的问题。

我只是错误地使用了 python-docx 吗?如果没有,我应该使用更合适的软件包或技术吗?


目前尚不清楚这些文件是什么类型.xml文件是,但我怀疑它们是 Word 2003 中使用的过渡格式,它是基于 XML 的,但不是自 Word 2007 以来 Word 文档中使用的开放打包约定 (OPC) 格式。

python-docx现在或将来都不会阅读这些内容,因此您需要将它们转换为.docx直接格式化或解析 XML。

如果我有可用的 Windows,我想我会使用 VBA 编写一个简短的转换脚本,然后使用.docx文件使用python-pptx。我首先看看Word是否可以加载.xml文件并从那里开始。

您也许能够找到一个实用程序来进行批量转换,但我在快速搜索中没有找到任何实用程序。

如果您感兴趣的只是一次性打印,并且 Word 将加载文件,那么无需转换步骤的 VBA 脚本可能是一个不错的选择。python-docx不打印.docx文件,只能读取和写入它们。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 XML Word 文档转换为 DOCX? 的相关文章

  • 类的 IPython 表示

    我正在使用我创建的模块尝试 IPython 但它没有显示类对象的实际表示 相反 它显示类似的内容 TheClass module TheClass name I heavily在这个模块中使用元类 我有真正有意义的类表示 应该向用户显示 是
  • Pandas set_levels,如何避免标签排序?

    我使用时遇到问题set levels多索引 from io import StringIO txt Name Height Age Metres A 1 25 B 95 1 df pd read csv StringIO txt heade
  • Python - 比较同一字典中的值

    我有一本字典 d Trump MAGA FollowTheMoney Clinton dems Clinton Stein FollowTheMoney Atlanta 我想删除字符串列表中的重复字符串 该字符串是键的值 对于这个例子 期望
  • 多输出堆叠回归器

    一次性问题 我正在尝试构建一个多输入堆叠回归器 添加到 sklearn 0 22 据我了解 我必须结合StackingRegressor and MultiOutputRegressor 经过多次尝试 这似乎是正确的顺序 import nu
  • VSCode Settings.json 丢失

    我正在遵循教程 并尝试将 vscode 指向我为 Scrapy 设置的虚拟工作区 但是当我在 VSCode 中打开设置时 工作区设置 选项卡不在 用户设置 选项卡旁边 我还尝试通过以下方式手动转到文件 APPDATA Code User s
  • 使用主题交换运行多个 Celery 任务

    我正在用 Celery 替换一些自制代码 但很难复制当前的行为 我期望的行为如下 创建新用户时 应向tasks与交换user created路由键 该消息应该触发两个 Celery 任务 即send user activate email
  • 从Django中具有外键关系的两个表中检索数据? [复制]

    这个问题在这里已经有答案了 This is my models py file from django db import models class Author models Model first name models CharFie
  • Pycharm 在 os.path 连接上出现“未解析的引用”

    将pycharm升级到2018 1 并将python升级到3 6 5后 pycharm报告 未解析的引用 join 最新版本的 pycharm 不会显示以下行的任何警告 from os path import join expanduser
  • GUI(输入和输出矩阵)?

    我需要创建一个 GUI 将数据输入到矩阵或表格中并读取此表单数据 完美的解决方案是限制输入表单仅允许float 例如 A 1 02 0 25 0 30 0 515 0 41 1 13 0 15 1 555 0 25 0 14 1 21 2
  • Java 和 Python 可以在同一个应用程序中共存吗?

    我需要一个 Java 实例直接从 Python 实例数据存储中获取数据 我不知道这是否可能 数据存储是否透明 唯一 或者每个实例 如果它们确实可以共存 都有其单独的数据存储 总结一下 Java 应用程序如何从 Python 应用程序的数据存
  • 未知错误:Chrome 无法启动:异常退出

    当我使用 chromedriver 对 Selenium 运行测试时 出现此错误 selenium common exceptions WebDriverException Message unknown error Chrome fail
  • python的shutil.move()在linux上是原子的吗?

    我想知道python的shutil move在linux上是否是原子的 如果源文件和目标文件位于两个不同的分区上 行为是否不同 或者与它们存在于同一分区上时的行为相同吗 我更关心的是如果源文件和目标文件位于同一分区上 shutil move
  • 通过Python连接到Bigquery:ProjectId和DatasetId必须非空

    我编写了以下脚本来通过 SDK 将 Big Query 连接到 Python 如下所示 from google cloud import bigquery client bigquery Client project My First Pr
  • Pandas 组合不同索引的数据帧

    我有两个数据框df 1 and df 2具有不同的索引和列 但是 有一些索引和列重叠 我创建了一个数据框df索引和列的并集 因此不存在重复的索引或列 我想填写数据框df通过以下方式 for x in df index for y in df
  • 将 Matlab 的 datenum 格式转换为 Python

    我刚刚开始从 Matlab 迁移到 Python 2 7 在读取 mat 文件时遇到一些问题 时间信息以 Matlab 的日期数字格式存储 对于那些不熟悉它的人 日期序列号将日历日期表示为自固定基准日期以来已经过去的天数 在 MATLAB
  • 找到一个数字所属的一组范围

    我有一个 200k 行的数字范围列表 例如开始位置 停止位置 该列表包括除了非重叠的重叠之外的所有类型的重叠 列表看起来像这样 3 5 10 30 15 25 5 15 25 35 我需要找到给定数字所属的范围 并对 100k 个数字重复该
  • Firebase Firestore:获取文档的生成 ID (Python)

    我可以创建一个新文档 带有自动生成的 ID 并存储对其的引用 如下所示 my data key value doc ref db collection u campaigns add my data 我可以像这样访问数据本身 print d
  • 根据 Pandas 中的列表选择数据框行的子集

    我有一个数据框df1并列出x In 22 import pandas as pd In 23 df1 pd DataFrame C range 5 B range 10 20 2 A list abcde In 24 df1 Out 24
  • 使用 C# 读取 Soap 消息

  • 使用 powershell 将 XML 转换为特定的 JSON 结构

    需要有关将 xml 转换为特定 json 结构的帮助 XML 看起来像这样

随机推荐