Skip to content

WindZh03/Paper2Excel-Skill

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Paper2Excel

paper2excel 是一个用于批量读取论文 PDF、生成结构化总结并导出 Excel 的 Codex/Claude Code skill。

它适用于这样的场景:用户提供一个文件夹路径,目录中包含多篇可复制文本的 PDF 论文;skill 依次提取每篇论文内容,按固定字段生成精炼总结,最后将所有论文汇总保存到同一个 .xlsx 文件中。

功能介绍

  • 批量扫描指定文件夹中的 PDF 文件
  • 从 PDF 中提取论文文本内容
  • 按固定字段生成结构化论文总结
  • 将多篇论文汇总导出为单表 Excel
  • 支持依赖检查与临时依赖安装

当前默认字段如下:

  • title
  • publish+time
  • keywords
  • 研究现状
  • motivation
  • insight
  • method
  • 实验结论
  • limitation
  • other

字段规则如下:

  • title:英文标题
  • publish+time:仅基于 PDF 内信息提取,优先 Venue Year
  • keywords:3 个英文关键词,使用分号分隔
  • 其余字段:中文精炼总结

默认长度约束如下:

  • 研究现状:约 30 字
  • motivation:约 30 字
  • insight:约 30 字
  • method:约 100 字
  • 实验结论:约 40 字
  • limitation:约 30 字
  • other:约 40 字

项目结构

paper2excel/
├── SKILL.md
├── agents/
│   └── openai.yaml
└── scripts/
    └── paper2excel.py

说明:

  • SKILL.md:定义 skill 的触发条件、字段规则和使用流程
  • agents/openai.yaml:skill 的界面元信息
  • scripts/paper2excel.py:提供依赖检查、依赖安装、PDF 提取和 Excel 写入能力

安装方法

1. 安装为 Codex skill

如果你希望 Codex 自动发现该 skill,建议将整个 paper2excel 文件夹放到:

~/.codex/skills/paper2excel

确保目录中至少包含:

  • SKILL.md
  • agents/openai.yaml
  • scripts/paper2excel.py

使用方法

在 Codex 中使用

如果你已经把 paper2excel 安装到:

~/.codex/skills/paper2excel

那么后续在 Codex 中不需要手动反复解释流程,只需要直接提出类似请求即可触发该 skill。

例如:

请使用 paper2excel 处理 /Users/yourname/papers

或者:

给你一个文件夹路径,请批量总结其中的 PDF 论文并导出 Excel:/Users/yourname/papers

也可以显式写成:

使用 $paper2excel 处理 /Users/yourname/papers

Codex 典型执行流程如下:

  1. 识别这是一个“批量读取 PDF 论文并导出 Excel”的请求
  2. 触发 paper2excel skill
  3. 检查依赖是否齐全
  4. 提取目标文件夹中的 PDF 文本
  5. 按 skill 中定义的字段生成结构化总结
  6. 写出单表 .xlsx 文件

如果 skill 已经安装,但依赖还没有准备好,建议先在 Codex 中让它执行:

请先检查 paper2excel 的依赖,如果缺失就安装到 /tmp/paper2excel_deps,然后处理 /Users/yourname/papers

如果依赖已经准备好了,后续通常只需要做两件事:

  1. 给出要处理的文件夹路径
  2. 指定输出 Excel 的位置,或者让 Codex自行决定输出路径

例如:

使用 $paper2excel 处理 /Users/yourname/papers,并把结果导出到 /Users/yourname/paper_summaries.xlsx

如果你希望修改字段、长度要求或输出格式,先更新 SKILL.mdscripts/paper2excel.py,再继续在 Codex 中使用即可。

如何更改字段设置

如果你想调整输出字段、字段顺序或长度要求,主要修改以下两个位置。

1. 修改 SKILL.md

文件位置:

SKILL.md

这里定义了:

  • skill 的触发条件
  • 输出字段
  • 每个字段的含义
  • 各字段的长度约束
  • 缺失值处理规则

如果你想新增字段,例如增加 datasetfuture work,需要在 SKILL.md 的以下部分同步修改:

  • ## Output Schema
  • ## Field Rules
  • ## Summarization Rules

2. 修改 scripts/paper2excel.py

文件位置:

scripts/paper2excel.py

重点关注这个常量:

OUTPUT_COLUMNS = [
    "title",
    "publish+time",
    "keywords",
    "研究现状",
    "motivation",
    "insight",
    "method",
    "实验结论",
    "limitation",
    "other",
]

如果你改了字段,需要同步修改:

  • OUTPUT_COLUMNS
  • widths 字典中的列宽设置

例如新增字段 dataset,则至少需要:

  1. OUTPUT_COLUMNS 中加入 dataset
  2. widths 中加入对应列宽
  3. SKILL.md 中补充该字段定义和总结要求
  4. 在生成结构化 JSON 时输出该字段

输出规则

  • 仅基于 PDF 内部信息总结,不依赖外部检索
  • titlepublish+timekeywords 使用英文
  • 其他字段使用中文
  • 缺失信息尽量留空,不编造
  • 默认只处理目标文件夹当前层级,不递归子目录
  • 当前适用于可复制文本的 PDF,不包含 OCR 流程

依赖说明

必要依赖

  • pypdf:提取 PDF 文本
  • openpyxl:生成 .xlsx
  • 允许skill时,会自动安装

当前限制

  • 当前只负责 PDF 文本提取和 Excel 写入
  • 结构化总结 JSON 仍需要由 Codex 按 skill 规则生成
  • 不递归子目录
  • 不处理扫描版 PDF
  • 不自动做 OCR
  • 不自动联网补全会议或年份信息

后续可扩展方向

  • 增加从提取文本到结构化总结 JSON 的全自动脚本
  • 支持递归扫描子目录
  • 增加 OCR 兜底
  • 增加额外字段,如 datasetbaselinefuture work
  • 增加多 sheet 输出或失败日志

About

批量读取论文 PDF、生成结构化总结并导出 Excel 的 Codex/Claude Code skill

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages