Python-docx 判断 Word 文档格式 (Doc 或 Docx)
使用 Python-docx 判断 Word 文档格式 (Doc 或 Docx)
本文介绍如何使用 Python-docx 库的 Document 类判断 Word 文档是 Doc 还是 Docx 格式,无需依赖文件后缀名。
原理:
可以使用 python-docx 的 Document 类中的 element 属性来判断文档格式,因为 element 属性返回的是文档的 XML 元素,不同格式的文档其元素名称不同。
实现方法:
from docx import Document
def determine_doc_format(file_path):
doc = Document(file_path)
if doc.element.tag.endswith('word/document'):
return 'docx'
elif doc.element.tag.endswith('word/document.xml'):
return 'doc'
else:
return 'unknown'
代码解析:
- 首先使用
Document类加载文档。 - 然后通过
element属性获取文档的 XML 元素标签。 - 如果标签以 'word/document' 结尾,则说明文档是 docx 格式。
- 如果标签以 'word/document.xml' 结尾,则说明文档是 doc 格式。
- 否则返回 'unknown' 表示无法判断。
注意事项:
- 此方法的前提是文档本身是可读的,如果文档损坏或者无法打开,则无法使用此方法判断格式。
- 此方法仅适用于 Word 文档,对于其他格式的文档可能无法识别。
原文地址: https://www.cveoy.top/t/topic/nChE 著作权归作者所有。请勿转载和采集!