python - Python:以树状结构提取 MS Word 数据
问题描述
有什么方法可以在树结构中提取 MS Word 文件数据。我的意思是文档文件有标题、段落和表格。我想在标题层次结构中提取该信息。不知道什么是最好的方法。任何人都可以分享他们用python解析word文档的经验吗?
解决方案
标题或印刷用语中的“节标题”不是 Word 中的容器对象;它们每个都只是一个段落对象,其格式使它们显示为节标题,通常是粗体且比正文稍大的字体。
所以无论你采取什么方法,都有一定的可能会错过读者会感知的“边界”。
最好的方法在一定程度上取决于您将使用的文档。在最好的情况下,每个部分都以具有标题 {n}样式之一的段落开始,例如“标题 1”和“标题 2”。然后,您可以继续阅读段落,检查其中一种样式并相应地填充您的层次结构。作者可能坚持这一学科有充分的理由,因为它使形成目录 (TOC) 变得更加容易。
否则,您将需要寻找其他可靠的标记来指示新部分的开始。
请注意,Word 也有一个“节”的概念,这与我在这里使用这个词的方式完全不同。在 Word 中,节是共享相同页面格式(如边距、纵向/横向等)的连续页面块。在出版用语中,节是具有标题(但通常没有分页符)的章节或类似块的细分,并且本身可以分为具有较小标题的每个级别的子节。
推荐阅读
- php - 在 readline() 字符串中使用带重音符号(例如:é、à、...)的 PHP 8.0 “分段错误”
- javascript - 如何用js查看手机环境音量?
- c - 错误:尝试使用处理程序时取消引用指向不完整类型的指针
- reactjs - 为什么我收到此警告消息,不符合 ReactJS 中所需的格式“yyyy-MM-dd”?
- java - Micronaut HttpClients 交换体始终为空
- reactjs - NextJS 不识别自定义钩子
- reactjs - 如何使用“REACT-SELECT”编辑和更新保存在 Firebase 文档中的表单的值
- javascript - 如何使用 SetTimeOut 函数在 javascript 中平滑滚动
- javascript - 从 snap svg 组中的相同位置删除和添加元素
- ios - 如何在 IOS 上使用 FCM 检测卸载?