PubMed文献批量下载工具使用指南

【免费下载链接】Pubmed-Batch-Download Batch download articles based on PMID (Pubmed ID) 【免费下载链接】Pubmed-Batch-Download 项目地址: https://gitcode.com/gh_mirrors/pu/Pubmed-Batch-Download

PubMed文献批量下载工具是一款基于Python开发的自动化文献获取工具,能够根据PubMed ID(PMID)快速、准确地批量下载学术文章PDF,为科研人员节省宝贵时间。

项目概述

该项目是一个开源工具,最初由Bill Greenwald开发维护。工具使用Python 3.7及以上版本,依赖requests、beautifulsoup4、lxml等第三方库,实现了基于PMID的文献自动化下载功能。

核心功能特点

批量下载效率高

用户可以通过两种方式提供PMID列表:

  • 使用-pmids参数直接输入逗号分隔的PMID列表
  • 使用-pmf参数指定包含PMID的TSV文件

智能去重机制

工具会自动检测输出目录中已存在的PDF文件,跳过已下载的文献,避免重复下载,节省网络资源和存储空间。

完善的错误处理

程序能够记录未能成功下载的PMID,并保存到错误日志文件中,方便用户后续重新尝试下载。

灵活的参数配置

用户可以通过命令行参数自定义:

  • 输出目录路径(默认为fetched_pdfs
  • 错误日志文件路径(默认为`unfetched_pmids.tsv)
  • 最大重试次数(默认为3次)

环境配置要求

Python版本要求

  • Python 3.7及以上版本

必需依赖包

requests
requests3
beautifulsoup4
lxml

快速环境配置

项目提供了Anaconda环境配置文件,可以快速创建包含所有必需依赖的独立环境:

Linux系统配置:

conda env create -f pubmed-batch-downloader-py3.yml
conda activate pubmed-batch-downloader-py3

Windows系统配置:

conda env create -f pubmed-batch-downloader-py3-windows.yml
conda activate pubmed-batch-downloader-py3
conda install requests beautifulsoup4 lxml
conda install requests3

使用方法详解

基本命令格式

python fetch_pdfs.py [-pmids 或 -pmf] [可选参数]

参数说明

  • -pmids:逗号分隔的PMID列表
  • -pmf:包含PMID的TSV文件路径
  • -out:PDF文件输出目录
  • -errors:未下载PMID记录文件路径
  • -maxRetries:连接错误时的最大重试次数

使用示例

直接使用PMID列表:

python fetch_pdfs.py -pmids 123,124,125,23923,111

使用PMF文件:

python fetch_pdfs.py -pmf example_pmf.tsv

PMF文件格式说明

PMF文件支持两种格式:

仅包含PMID:

PMID1
PMID2
PMID3

包含PMID和自定义文件名:

123  Article_1
4456  Some_Other_Article

技术实现原理

工具通过PubMed的E-utilities API获取文献链接,然后使用多种查找器(finder)策略来定位PDF下载链接。目前支持的查找器包括:

  • genericCitationLabelled:基于引用元数据的通用查找器
  • pubmed_central_v2:PubMed Central专用查找器
  • acsPublications:美国化学学会期刊查找器
  • uchicagoPress:芝加哥大学出版社期刊查找器
  • nejm:新英格兰医学期刊查找器
  • futureMedicine:未来医学期刊查找器
  • science_direct:ScienceDirect平台查找器

使用注意事项

已知限制

  • 工具无法处理需要JavaScript加载PDF链接的页面
  • 目前不支持Wolters Kluwer旗下的期刊
  • Ovid平台不支持requests包,相关文献无法获取

错误处理机制

当遇到连接错误(特别是ECONNRESET错误代码104)时,工具会根据设置的-maxRetries参数自动重试下载。

项目价值

对于科研工作者而言,PubMed批量下载工具具有重要的实用价值。它将用户从繁琐的文献下载工作中解放出来,让更多时间投入到文献阅读、数据分析和创新研究等核心工作。无论是开展新研究需要大量文献支持,还是定期跟踪领域最新进展,这款工具都能成为科研人员的得力助手。

项目源码可以通过以下命令获取:

git clone https://gitcode.com/gh_mirrors/pu/Pubmed-Batch-Download

通过合理使用这款工具,科研人员能够显著提升文献获取效率,更好地专注于科学研究本身。

【免费下载链接】Pubmed-Batch-Download Batch download articles based on PMID (Pubmed ID) 【免费下载链接】Pubmed-Batch-Download 项目地址: https://gitcode.com/gh_mirrors/pu/Pubmed-Batch-Download

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐