2

全部,

我正在修改一个 python 脚本(使用 PyUno),它将读取 MSword 文档(.docx)并将其转换为 xml。我有一个脚本,可以在这里完成我需要的一切,除了它将从 doc 转换为 pdf。我找不到可接受的 xml 导出格式列表。

任何帮助将不胜感激。

谢谢!

:bp:

4

1 回答 1

0

这两个 FilterName 值产生不同的平面 XML 格式:

  • OpenDocument Text Flat XML
  • MS Word 2003 XML

我通过这样做找到了这些名称:

  1. 通过转到工具 -> 选项 -> 高级启用宏录制,选中“启用宏录制”。
  2. 工具 -> 宏 -> 录制宏。
  3. 文件 -> 另存为。为类型选择了各种选项。
  4. 为宏命名,然后检查生成的 Basic 代码中的 FilterName 属性。

请记住,.odt 和 .docx 也是基于 XML 的格式,只是它们是压缩的而不是扁平的。可以通过执行以下操作来解析这些格式的文件:

import os
import xml.dom.minidom
import xml.parsers.expat
import zipfile

filepath = "in.odt"  # or "in.docx"
tempDir = "path/to/temp/dir/"  # change according to your system
with zipfile.ZipFile(filepath, 'r') as zipper:
    zipper.extractall(tempDir)
try:
    dom = xml.dom.minidom.parse(os.path.join(tempDir, "content.xml"))
except xml.parsers.expat.ExpatError:
    # handle exception
于 2016-01-06T02:36:06.223 回答