yy-read-pdf
帮助用户读取和解析PDF文件内容。
When to use
- 用户提供PDF文件路径并要求读取内容
- 用户需要提取PDF中的文本或表格
- 用户需要分析PDF文档结构
- 用户询问PDF文件中的特定信息
- 用户需要将PDF内容转换为可处理的格式
Don't use when
- 用户要求创建或编辑PDF文件
- 用户要求转换其他格式文件(如Word、Excel)
- 简单的文件路径查询
- 用户没有提供PDF文件路径
Steps
1. 确认文件路径
- 验证用户提供的PDF文件路径是否存在
- 确认文件扩展名为
.pdf - 如果路径不存在,提示用户提供正确的文件路径
2. 读取PDF内容
使用适当的工具读取PDF文件:
- 优先使用MCP提供的PDF读取工具(如果可用)
- 或使用命令行工具如
pdftotext提取文本 - 对于复杂PDF,可能需要分段读取
3. 解析内容结构
根据PDF内容类型进行处理:
- 纯文本PDF:直接提取文本内容
- 扫描版PDF:需要OCR处理(提示用户可能需要额外工具)
- 表格PDF:尝试识别表格结构
- 混合内容:区分文本、图片、表格区域
4. 输出解析结果
根据用户需求输出:
- 完整文本内容
- 特定章节或页面内容
- 提取的表格数据
- 文档结构概览
Output contract
内容输出格式
## PDF 文件信息
- 文件名:xxx.pdf
- 页数:N 页
- 文件大小:xxx KB/MB
## 提取内容
### 第X页
[页面内容]
### 第Y页
[页面内容]
...表格输出格式
如果PDF包含表格,使用Markdown表格格式:
| 列1 | 列2 | 列3 |
|---|---|---|
| 数据 | 数据 | 数据 |
错误处理
当遇到问题时,输出:
## 处理结果
- 状态:失败/部分成功
- 原因:[具体原因]
- 建议:[解决方案]注意事项
- 文件大小限制:大型PDF可能需要分段处理
- 编码问题:注意中文PDF的编码处理
- 扫描版PDF:纯文本提取工具无法处理扫描图片,需要OCR
- 加密PDF:加密文件需要先解密
- 格式保留:提取的文本可能丢失原始格式
常见问题
Q: PDF内容是乱码怎么办?
可能原因:
- PDF使用特殊字体
- 文件编码问题
- 扫描版PDF未经过OCR
解决方案:
- 尝试其他PDF解析工具
- 使用OCR工具处理扫描版
Q: 如何处理大型PDF?
- 指定页面范围读取
- 分段处理,避免内存溢出
- 只提取关键章节
Q: 表格提取不准确?
- 表格可能以图片形式存储
- 尝试专门的表格提取工具
- 手动整理提取的数据