Pyzotero Zotero API 封装
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/pyzotero-zh。
技能介绍
要解决什么问题
Zotero 桌面端适合手工整理文献,但批量同步、与脚本/流水线对接、或从自有系统写入条目时,需要走 Zotero Web API v3。直接拼 HTTP 请求要处理认证、分页、条目 JSON 结构(含 creators、附件键等),维护成本不低。
技能如何工作
Pyzotero 把 API 封装成 Python 对象:实例绑定一个库(个人或群组),方法都针对该库执行。
- 读:条目、集合、标签、群组信息;可用搜索/过滤参数(见
references/search-params.md);默认分页约 100 条,用zot.everything(zot.items())拉全量。 - 写:创建/更新/删除条目;集合与标签管理;附件上传(
references/files-attachments.md)。成功返回True,失败抛出ZoteroError。 - 导出:BibTeX、CSL-JSON 等(
references/exports.md)。 - 本地只读:无需 API 密钥的本地模式,适合离线读库。
条目正文在 item['data'] 里,例如 item['data']['title']、item['data']['creators']。技能内 references/ 按主题拆分(认证、读/写 API、分页 follow()/everything()、全文索引、CLI、错误处理等),按任务查对应文档即可。
适用边界与注意点
- 写入与在线库操作依赖 用户 ID、API 密钥(及群组库的 库 ID),需按
references/authentication.md配置环境变量或.env。 - 大规模同步时注意 API 限流与分页,不要假设一次
items()即全库。 - 本地模式能力以只读为主,不能替代需写回云端的自动化场景。
使用场景
- 论文写作前需把 Zotero 个人库整库导出为 BibTeX,供 LaTeX 编译引用格式一致
- 爬虫或 RSS 抓到新论文元数据后,要批量创建条目并写入课题组群组库
- 已有条目缺 PDF,需根据 DOI 或本地路径批量上传附件到对应 Zotero item
- 跨多个集合做标签统计或按 saved search 条件筛条目,再脚本化更新 creators 或 collections
适合人员
- 用 LaTeX 写学位论文、希望 Zotero 与 `.bib` 同步而非手导的研究型硕博
- 维护实验室群组 Zotero 库、需从机构知识库或 Excel 批量入库的管理员
- 做文献监控或知识图谱流水线、要把新文献写回云端 Zotero 的后端工程师
- 本地已有 Zotero 数据目录、想在无 API 密钥情况下只读遍历条目做数据分析的人