Install
openclaw skills install @thcjp/document-pdf-tool-freeopenclaw skills install @thcjp/document-pdf-tool-freePDF文档工具是针对PDF处理领域的专业化AI辅助工具。免费版面向个人用户,提供核心功能与基础用法,适合快速上手和日常使用。
本工具经过深度优化,增强元数据和适用关键词,完全适配SkillHub平台规范。
文本提取、表格提取、PDF创建、合并拆分、页面旋转、元数据提取、水印添加、密码保护、OCR识别
执行核心能力操作,使用input_params参数进行配置,支持创建/查询/导出等操作。
input_params参数,支持创建/查询/导出操作基础功能完整覆盖
输入: 用户提供基础功能完整覆盖所需的指令和必要参数。 处理: 解析基础功能完整覆盖的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回基础功能完整覆盖的响应数据,包含状态码、结果和日志。
input_params参数,支持创建/查询/导出操作简洁易用的操作接口
输入: 用户提供简洁易用的操作接口所需的指令和必要参数。 处理: 解析简洁易用的操作接口的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回简洁易用的操作接口的响应数据,包含状态码、结果和日志。
input_params参数,支持创建/查询/导出操作标准格式输入输出
输入: 用户提供标准格式输入输出所需的指令和必要参数。 处理: 解析标准格式输入输出的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回标准格式输入输出的响应数据,包含状态码、结果和日志。
input_params参数,支持创建/查询/导出操作快速上手,零配置即可使用
输入: 用户提供快速上手所需的指令和必要参数。 处理: 解析快速上手的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回快速上手的响应数据,包含状态码、结果和日志。
input_params参数,支持创建/查询/导出操作适合个人日常使用场景
输入: 用户提供适合个人日常使用场景所需的指令和必要参数。 处理: 解析适合个人日常使用场景的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回适合个人日常使用场景的响应数据,包含状态码、结果和日志。
input_params参数,支持创建/查询/导出操作输入: 用户提供核心能力所需的指令和必要参数。
处理: 解析核心能力的输入参数,完成核心逻辑,返回结构化响应。
输出: 返回核心能力的响应数据,包含状态码、结果和日志。
技术实现要点:核心能力基于input_params参数与output_format配置实现,支持创建/查询/修改/删除等操作模式,通过config_options进行运行时配置。
能力覆盖范围:本skill的核心能力覆盖以下场景关键词:处理工具包、文本表格提取、文档工具、免费版等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。
使用pdfplumber或pdftotext提取PDF中的文本内容。示例指令:`
`提取这个PDF的文本
操作流程:
从PDF中提取表格数据并导出为Excel格式。示例指令:`
`提取PDF中的表格
将多个PDF合并为一个,或按页码拆分为多个文件。示例指令:`
`合并这三个PDF文件
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| input | string | 是 | PDF文档工具(免费版)处理的输入数据或指令 |
| options | object | 否 | 附加配置选项,如模式选择、格式偏好等 |
| callback_url | string | 否 | 异步处理完成后的回调通知URL |
# 确保Python环境可用
python3 --version
# ...
# 依赖说明
pip install requests
# PDF基础操作
from pypdf import PdfReader, PdfWriter
# ...
# 提取文本
reader = PdfReader("document.pdf")
text = "".join(page.extract_text() for page in reader.pages)
print(f"共 {len(reader.pages)} 页")
# ...
# 合并PDF
writer = PdfWriter()
for pdf_file in ["a.pdf", "b.pdf"]:
for page in PdfReader(pdf_file).pages:
writer.add_page(page)
with open("merged.pdf", "wb") as f:
writer.write(f)
完成上述代码后,将根据输入参数返回结构化响应。免费版支持单次任务,适合解析单个文件或任务。
pdf:
default_library: pypdf
text_extraction: pdfplumber
output_format: txt
| 配置项 | 说明 | 默认值 |
|---|---|---|
| 基础路径 | 工作目录 | ./ |
| 输出格式 | 结果输出格式 | json |
# 免费版:单文件优化
# 确保输入文件不超过建议大小
# 处理完成后释放资源
A: 免费版为单线程处理,对于大文件建议分批处理或升级到专业版获得并行处理能力。
A: 支持标准格式输入输出,常见格式包括JSON、YAML、Markdown等。
A: 本skill基于Markdown指令规范,无需额外API Key。如需外部服务API,请参考对应服务的注册流程。
A: 免费版支持单次操作,适合个人日常使用。如需批量处理或高级功能,建议升级到专业版。
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent内置LLM提供 |
| pypdf | Python库 | 必需 | pip install pypdf |
| pdfplumber | Python库 | 推荐 | pip install pdfplumber |
| reportlab | Python库 | 可选 | pip install reportlab |
| pytesseract | Python库 | 可选 | pip install pytesseract |
| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| 配置错误 | 参数缺失或格式错误 | 检查依赖说明中的配置要求 |
| 运行时错误 | 运行环境不满足 | 确认运行环境符合依赖说明 |
| 网络错误 | 连接超时或不可达 | 执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案 |
{
"success": true,
"data": {
"result": "PDF文档工具(免费版)处理结果",
"execution_time": "0.5s",
"metadata": {
"version": "1.0",
"processor": "document pdf"
}
},
"execution_log": ["解析输入参数", "执行核心处理", "格式化输出结果"],
"error": null
}