基于 OpenAlex 和 CrossRef 数据,分析期刊论文的作者单位、国家分布及审稿周期。
- Python 3.10+
- pip
cd paper_search
pip install -r requirements.txtstreamlit run app.py启动后浏览器会自动打开,或手动访问:
http://localhost:8501
在左侧边栏输入期刊名称(支持英文),点击 搜索期刊。
示例:
Nature Communications、Advanced Materials、Cell
从下拉菜单中选择目标期刊(显示 ISSN 和论文总数供参考)。
| 参数 | 说明 |
|---|---|
| 近几年 | 分析最近 N 年发表的论文(1–20 年) |
| 排除领域 | 逗号分隔的研究领域关键词,匹配后排除对应论文。例如:Computer Science, Mathematics |
| 获取投稿→接收时间 | 从 CrossRef 查询每篇论文的提交/接收日期。注意:速度较慢,且数据覆盖率因期刊而异,建议先不勾选查看结果 |
点击 开始分析,等待数据加载(首次查询需联网,结果会缓存 24 小时)。
分析结果分为 5 个标签页:
- 论文总数、涉及国家数、机构数等关键指标
- 年度发文量趋势图
- 研究领域分布饼图
- 研究主题统计表
- 世界地图:各国第一作者论文量分布
- 国家排名条形图(Top 15)
- 机构排名水平条形图(Top 20,按国家着色)
- 完整国家/机构统计表(可展开)
- 与第一作者页面结构相同,针对通讯作者统计
- 若论文未标注通讯作者,该部分不计入统计
- 仅在勾选"获取投稿→接收时间"后显示有效数据
- 中位数、均值、数据范围等统计指标
- 审稿天数分布直方图
- 各年份审稿时间箱线图
- 历年趋势折线图
- 支持按标题/作者/机构关键词筛选
- 点击 DOI 链接直接跳转原文
- 底部附完整参考文献列表
页面底部提供两种导出格式:
- CSV:单表,包含所有字段
- Excel:多工作表
论文数据:完整原始数据统计概览:关键指标汇总国家统计:第一作者国家分布
在运行 streamlit run 的终端中按:
Ctrl + C
若终端已关闭,可用以下命令强制停止:
kill $(lsof -t -i :8501)Q:搜索不到期刊?
尝试使用英文全称,或期刊名称的关键词(如 Nature 而非缩写)。
Q:论文数量很少?
OpenAlex 仅收录 article 类型文章,评论、社论等不计入。部分小众期刊收录量有限。
Q:审稿时间数据很少或为空? CrossRef 的日期数据依赖期刊主动提交,许多期刊不提供此信息,属正常现象。
Q:分析很慢?
首次查询需联网获取数据,结果缓存在本地 paper_search_cache.sqlite 文件中,24 小时内重复查询无需重新请求。若勾选了"获取投稿→接收时间",每篇论文需单独请求 CrossRef,500 篇约需 5 分钟。
| 数据来源 | 提供信息 | 限制 |
|---|---|---|
| OpenAlex | 论文元数据、作者、机构、国家、研究领域 | 免费,无需注册 |
| CrossRef | 投稿日期、接收日期 | 免费,覆盖率因期刊而异 |