Word 文档读取器
使用 Python 解析 Word 文档,提取文本内容和结构化信息。
支持的功能
- - 文档文本提取 - 提取段落、标题、页眉页脚内容
- 表格解析 - 读取表格数据并转换为结构化格式
- 图片处理 - 提取文档中的图片信息
- 元数据获取 - 读取文档属性(作者、标题、创建时间等)
- 批量处理 - 支持处理多个文档
用法
基本文本提取
CODEBLOCK0
指定输出格式
CODEBLOCK1
提取特定内容
CODEBLOCK2
批量处理
CODEBLOCK3
参数说明
| 参数 | 说明 | 默认值 |
|---|
| INLINECODE0 | 输出格式(json/text/markdown) | text |
| INLINECODE1 |
提取内容类型(text/tables/images/metadata/all) | all |
|
--batch | 批量处理模式 | false |
|
--output | 输出文件路径 | stdout |
|
--encoding | 文本编码(utf-8/gb2312) | utf-8 |
输出格式
JSON 格式
CODEBLOCK4
Markdown 格式
CODEBLOCK5
错误处理
- - 文件不存在:显示错误信息并退出
- 格式不支持:提示支持的文件类型
- 权限问题:提示文件访问权限
- 编码问题:尝试自动检测编码
示例场景
1. 查看项目文档
CODEBLOCK6
2. 提取会议记录
CODEBLOCK7
3. 批量处理文档
CODEBLOCK8
注意事项
- - 支持 .docx 格式(Office 2007+)
- .doc 格式需要额外依赖(如 antiword)
- 大文档处理可能需要较长时间
- 图片提取仅获取元数据,不包含实际图片数据
- 表格格式可能需要手动调整
故障排除
常见问题
- 1. ModuleNotFoundError: 确保已安装 python-docx
- PermissionError: 检查文件读取权限
- UnicodeDecodeError: 尝试不同的编码格式
安装依赖
CODEBLOCK9
对于 .doc 格式支持:
CODEBLOCK10
高级功能
自定义样式处理
脚本会自动处理以下文档元素:
- - 标题级别(H1-H6)
- 段落样式
- 列表项目
- 页眉页脚
- 文档属性
性能优化
- - 大文件流式处理
- 内存使用优化
- 进度显示(批量模式)
Word 文档读取器
使用 Python 解析 Word 文档,提取文本内容和结构化信息。
支持的功能
- - 文档文本提取 - 提取段落、标题、页眉页脚内容
- 表格解析 - 读取表格数据并转换为结构化格式
- 图片处理 - 提取文档中的图片信息
- 元数据获取 - 读取文档属性(作者、标题、创建时间等)
- 批量处理 - 支持处理多个文档
用法
基本文本提取
bash
python3 {baseDir}/scripts/read_word.py <文件路径>
指定输出格式
bash
JSON 输出
python3 {baseDir}/scripts/read_word.py <文件路径> --format json
纯文本输出
python3 {baseDir}/scripts/read_word.py <文件路径> --format text
Markdown 格式
python3 {baseDir}/scripts/read_word.py <文件路径> --format markdown
提取特定内容
bash
只提取文本
python3 {baseDir}/scripts/read_word.py <文件路径> --extract text
提取表格数据
python3 {baseDir}/scripts/read_word.py <文件路径> --extract tables
获取文档元数据
python3 {baseDir}/scripts/read_word.py <文件路径> --extract metadata
批量处理
bash
处理目录下所有 .docx 文件
python3 {baseDir}/scripts/read_word.py <目录路径> --batch
参数说明
| 参数 | 说明 | 默认值 |
|---|
| --format | 输出格式(json/text/markdown) | text |
| --extract |
提取内容类型(text/tables/images/metadata/all) | all |
| --batch | 批量处理模式 | false |
| --output | 输出文件路径 | stdout |
| --encoding | 文本编码(utf-8/gb2312) | utf-8 |
输出格式
JSON 格式
json
{
metadata: {
title: 文档标题,
author: 作者姓名,
created: 2024-01-01T10:00:00,
modified: 2024-01-01T12:00:00
},
text: 文档全文内容...,
tables: [
[
[表头1, 表头2],
[行1列1, 行1列2],
[行2列1, 行2列2]
]
],
images: [
{
filename: image1.png,
description: 图片描述,
size: 1024x768
}
]
}
Markdown 格式
markdown
文档标题
作者:作者姓名
创建时间:2024-01-01 10:00:00
正文内容
这是文档的正文内容...
表格示例
行2列2 |

图片列表
- 1. image1.png (1024x768) - 图片描述
错误处理
- - 文件不存在:显示错误信息并退出
- 格式不支持:提示支持的文件类型
- 权限问题:提示文件访问权限
- 编码问题:尝试自动检测编码
示例场景
1. 查看项目文档
bash
python3 {baseDir}/scripts/read_word.py 项目需求.docx --format markdown
2. 提取会议记录
bash
python3 {baseDir}/scripts/read_word.py 会议记录.docx --extract text
3. 批量处理文档
bash
python3 {baseDir}/scripts/read_word.py ./文档目录 --batch --format json --output results.json
注意事项
- - 支持 .docx 格式(Office 2007+)
- .doc 格式需要额外依赖(如 antiword)
- 大文档处理可能需要较长时间
- 图片提取仅获取元数据,不包含实际图片数据
- 表格格式可能需要手动调整
故障排除
常见问题
- 1. ModuleNotFoundError: 确保已安装 python-docx
- PermissionError: 检查文件读取权限
- UnicodeDecodeError: 尝试不同的编码格式
安装依赖
bash
pip3 install python-docx
对于 .doc 格式支持:
bash
Ubuntu/Debian
sudo apt-get install antiword
macOS
brew install antiword
高级功能
自定义样式处理
脚本会自动处理以下文档元素:
- - 标题级别(H1-H6)
- 段落样式
- 列表项目
- 页眉页脚
- 文档属性
性能优化
- - 大文件流式处理
- 内存使用优化
- 进度显示(批量模式)