学术文献PDF批量下载工具,支持从多个学术网站(arXiv、PubMed、PMC、Semantic Scholar等)搜索和下载论文, 自动提取元数据、生成索引列表。优先从官方免费渠道下载,付费文献提供手动下载指引。
学术文献PDF下载技能,帮助用户从多个公开学术资源库批量下载论文PDF,自动提取元数据并生成文献索引列表。
设计原则:
当用户需要以下操作时触发此技能:
python scripts/batch_downloader.py -q "machine learning"
python scripts/batch_downloader.py --ids 2103.00001 2103.00002
python scripts/doi_query.py 10.1056/NEJMoa1915872
python scripts/batch_downloader.py --urls "https://arxiv.org/pdf/2103.00001.pdf"
python scripts/batch_downloader.py -q "deep learning" -o ./my_papers -m 20 -w 5
技能采用优先级策略处理不同类型的文献:
第一优先级: 官方免费渠道
第二优先级: 查询和索引
无法自动下载时: 提供手动下载指引
| 渠道 | 类型 | 状态 | 说明 |
|---|---|---|---|
| arXiv | 预印本 | ✅ 完全支持 | 免费下载 |
| PubMed Central | 开放获取 | ✅ 完全支持 | 免费下载 |
| PubMed | 元数据 | ✅ 完全支持 | 查询信息 |
| arXiv API | 数据源 | ✅ 完全支持 | 搜索论文 |
| Semantic Scholar | 元数据 | ✅ 完全支持 | 获取信息 |
scholar-paper-downloader/
├── SKILL.md # 技能主文档
├── scripts/
│ ├── __init__.py
│ ├── config.py # 配置管理
│ ├── paper_search.py # 论文检索
│ ├── pdf_downloader.py # PDF下载器(仅官方渠道)
│ ├── metadata_extractor.py # 元数据提取
│ ├── file_manager.py # 文件管理
│ ├── index_generator.py # 索引生成
│ ├── batch_downloader.py # 批量下载主程序
│ ├── pubmed_downloader.py # PubMed/PMC下载器 (新)
│ ├── doi_query.py # DOI信息查询工具
│ └── requirements.txt # Python依赖
└── references/
├── arxiv_api_guide.md # arXiv API指南
├── best_practices.md # 最佳实践
└── manual_download_guide.md # 手动下载指南 (新)
1. 输入查询 (关键词/DOI/ID/URL)
↓
2. 搜索论文 (arXiv + PubMed + Semantic Scholar)
↓
3. 检查是否可自动下载
├─ arXiv论文 → 直接下载
├─ PMC开放获取 → 直接下载
└─ 付费期刊 → 生成手动下载指引
↓
4. 提取元数据
↓
5. 保存文件
├─ PDF → 保存到指定目录
└─ 指引 → 保存下载指南
↓
6. 生成索引
# config.py 关键配置
MAX_WORKERS = 5 # 并发下载线程数
TIMEOUT = 30 # 请求超时(秒)
RETRY_TIMES = 3 # 重试次数
OUTPUT_DIR = "./downloads" # 默认输出目录
[第一作者]_[年份]_[期刊简写].pdf
例如:
Wickramasinghe_2022_CellStemCell.pdf
Schweitzer_2020_NEJM.pdf
生成两种格式的索引:
index.md)# 论文索引
## 2022-03-11
1. PPARdelta activation induces metabolic...
- DOI: 10.1016/j.stem.2022.02.011
- 期刊: Cell Stem Cell
- 状态: 需手动下载
- 指南: PPAR_DELTA_DOWNLOAD.md
index.json)[
{
"title": "...",
"doi": "10.1016/j.stem.2022.02.011",
"journal": "Cell Stem Cell",
"status": "manual",
"guide": "PPAR_DELTA_DOWNLOAD.md",
"timestamp": "2026-03-11"
}
]
对于无法自动下载的论文,生成详细的下载指引:
# 论文下载指南
## 论文信息
- 标题: ...
- DOI: ...
- 期刊: ...
## 快速下载方法
1. 访问 Sci-Hub: https://sci-hub.tw
2. 输入 DOI: ...
3. 点击下载
## 备用方法
- 机构访问
- 联系作者
- 文献传递
# 推荐配置
python scripts/batch_downloader.py \
-q "your topic" \
-o ./my_papers \
-m 20 \
-w 5
参数说明:
-o: 指定输出目录-m: 最多下载论文数-w: 并发线程数(不要太大,避免被封)对于付费期刊论文:
定期检查索引文件:
# 查看所有未下载论文
grep "需手动下载" index.md
# 更新手动下载状态
# 编辑index.json,将status改为"downloaded"
版权尊重:
使用限制:
推荐用途:
生成的下载指引包含:
Sci-Hub手动下载
合法获取渠道
备用资源
Q: 无法下载某篇论文? A:
papers/*.md 中的下载指引Q: 下载的PDF无法打开? A:
Q: 搜索不到相关论文? A:
Q: 付费文献如何获取? A:
# 搜索并下载机器学习相关的arXiv论文
python scripts/batch_downloader.py -q "machine learning" -m 5
输出:
✅ Downloaded: arxiv_2103.00001.pdf
✅ Downloaded: arxiv_2103.00002.pdf
...
📄 Generated: index.md, index.json
python scripts/doi_query.py 10.1016/j.stem.2022.02.011
输出:
Title: PPARdelta activation induces metabolic...
Authors: Nadeera M. Wickramasinghe, ...
Journal: Cell Stem Cell
DOI: 10.1016/j.stem.2022.02.011
python scripts/batch_downloader.py --doi 10.1056/NEJMoa1915872
输出:
ℹ️ Paper not available for auto-download
📄 Generated manual download guide: NEJM_DOWNLOAD.md
📄 Added to index with status: manual
最后更新: 2026-03-11 版本: v2.0 状态: ✅ 稳定可用