学习笔记:python读取word文字标题
读取word文字标题
1. 导入模块
- 模块选择:使用python-docx模块处理Word文档,需从docx导入Document类
- 版本注意:当前仅支持docx新版本,不再支持老版本doc格式
2. 安装模块
- 安装命令:使用pip install python-docx安装,注意不是直接安装docx模块
- 依赖关系:会自动安装lxml依赖库(版本需≥2.3.2)
- 镜像源:默认使用清华镜像源加速下载,网络问题可能导致超时
3. 创建文件对象
- 文档结构:示例文档包含一级标题、二级标题、三级标题和正文内容
- 文件操作:
- 打开文件:doc = Document('1.docx')创建文档对象
- 样式导入:需从docx.enum.style导入WD_STYLE_TYPE枚举类
4. 读取一级标题
- 核心方法:遍历doc.paragraphs获取所有段落
- 样式判断:通过paragraph.style.name == 'Heading 1'识别一级标题
- 内容获取:使用paragraph.text获取标题文本内容
5. 读取所有标题
- 正则应用:使用re.match(r'Heading\d+$')匹配所有标题样式
- 匹配模式:Heading后接数字表示标题级别(如Heading1/2/3)
- 效率优化:避免多次遍历文档,可合并标题判断逻辑
6. 读取正文内容
- 样式标识:正文样式名为'Normal'(注意首字母大写)
- 内容特点:可能包含多段重复文本,需注意换行处理
- 扩展应用:同样方法可处理页眉页脚等特殊段落
7. 读取样式名称
- 样式遍历:通过doc.styles获取文档所有样式
- 类型过滤:使用WD_STYLE_TYPE.PARAGRAPH筛选段落样式
- 输出内容:包含Normal(正文)和Heading 1/2/3(标题)等样式名
8. 内容总结
- 核心要点:
- 标题识别依赖样式名称规范(Heading+数字)
- 正文内容必须通过Normal样式获取
- 样式系统包含更多元素(列表、页眉页脚等)
- 注意事项:Word操作API缺乏智能提示,需准确记忆样式名称
- 扩展建议:可结合正则表达式实现更复杂的文本提取逻辑

浙公网安备 33010602011771号