A
AMiner 学术数据查询与分析
作者:鹿Sir学术研究v1
基于 AMiner 开放平台 API 的学术数据查询与分析,覆盖学者画像、论文深挖、机构科研实力分析、期刊论文监测、论文问答搜索、专利分析 6 大组合工作流,支持全部 28 个开放接口的直接调用,结果附带可访问的实体链接。需配置 AMiner 开放平台 Token(环境变量 AMINER_API_KEY)使用。当用户需要查询学者信息、检索论文、分析机构科研产出、追踪期刊论文或检索专利时触发。触发词:学者查询、论文检索、文献搜索、机构分析、期刊监测、专利检索、学术数据。
下载量
353
点赞
86
价格
免费
技能文档
---
name: aminer-open-academic
title: AMiner 学术数据查询与分析
category: 学术研究
description: 基于 AMiner 开放平台 API 的学术数据查询与分析,覆盖学者画像、论文深挖、机构科研实力分析、期刊论文监测、论文问答搜索、专利分析 6 大组合工作流,支持全部 28 个开放接口的直接调用,结果附带可访问的实体链接。需配置 AMiner 开放平台 Token(环境变量 AMINER_API_KEY)使用。当用户需要查询学者信息、检索论文、分析机构科研产出、追踪期刊论文或检索专利时触发。触发词:学者查询、论文检索、文献搜索、机构分析、期刊监测、专利检索、学术数据。
---
# AMiner 开放平台学术数据查询
AMiner 是覆盖学者、论文、机构、期刊、专利等全景学术数据的平台。本技能覆盖其开放平台全部 28 个 API,并编排为 6 个实用工作流。使用前请在控制台生成令牌并配置为环境变量 `AMINER_API_KEY`,供脚本自动读取。
- **API 文档**:https://open.aminer.cn/open/docs
- **控制台(生成令牌)**:https://open.aminer.cn/open/board?tab=control
## 高优先级强制规则
以下四条规则优先级最高,任何查询任务都必须遵守:
1. **令牌安全**:只检查 `AMINER_API_KEY` 是否存在,任何位置(终端输出、日志、示例结果、调试信息)都不得明文展示令牌。
2. **成本控制**:始终优先选择最优组合查询,不做无差别全量取数。命中结果较多且用户未指定条数时,默认只取前 10 条详情。
3. **免费优先**:优先使用免费接口,除非用户明确要求更深字段或更高精度;免费接口无法满足时才升级付费接口。
4. **结果链接**:只要返回结果中包含实体(论文/学者/专利/期刊),必须在每个实体后附上可访问的 URL。
实体 URL 模板(强制):
- 论文:`https://www.aminer.cn/pub/{paper_id}`
- 学者:`https://www.aminer.cn/profile/{scholar_id}`
- 专利:`https://www.aminer.cn/patent/{patent_id}`
- 期刊:`https://www.aminer.cn/open/journal/detail/{journal_id}`
> 违反上述任一规则视为流程不合规,必须立即中止执行并纠正后才能继续。
## 技能工作流
### 步骤1:检查环境变量令牌(必做)
任何 API 调用前,必须先检查环境变量 `AMINER_API_KEY` 是否存在。鉴权请求头(令牌 + 接入渠道标识)已由客户端脚本 `scripts/aminer_client.py` 内置处理,手动构造 curl 时按 `references/api-catalog.md` 中的示例携带。只判断「存在 / 不存在」,不得输出、回显或记录令牌明文。
**标准检查(可直接使用):**
```bash
if [ -z "${AMINER_API_KEY+x}" ]; then
echo "AMINER_API_KEY 未配置"
else
echo "AMINER_API_KEY 已配置"
fi
```
- 环境变量中已有令牌:直接进入后续查询流程。
- 环境变量无令牌:检查用户是否显式提供了 `--token`。
- 两者都没有:立即停止,不调用任何 API、不进入任何工作流,先引导用户获取令牌。
**推荐的令牌配置方式:**
1. 前往 [AMiner 控制台](https://open.aminer.cn/open/board?tab=control)登录并生成 API Token。
2. 将令牌写入环境变量:`export AMINER_API_KEY="<TOKEN>"`
3. 脚本默认读取环境变量 `AMINER_API_KEY`(显式传入 `--token` 时优先)。
**无令牌时的引导话术:**
1. 明确告知用户:「当前缺少令牌,无法继续调用 AMiner API。」
2. 引导用户前往 [AMiner 控制台](https://open.aminer.cn/open/board?tab=control)登录并生成 API Token。
3. 遇到问题可参考[开放平台文档](https://open.aminer.cn/open/docs)。
4. 提示用户拿到令牌后回复:`我的令牌是:<TOKEN>` 即可继续。
> 令牌在有效期内可重复使用。取得令牌前不得执行任何数据查询步骤。
### 步骤2:选择调用方式
所有工作流都可通过 `scripts/aminer_client.py` 驱动:
```bash
# 推荐:先设置环境变量,无需重复传 --token
export AMINER_API_KEY="<TOKEN>"
# 学者画像分析
python scripts/aminer_client.py --action scholar_profile --name "Andrew Ng"
# 论文深挖(含引文链)
python scripts/aminer_client.py --action paper_deep_dive --title "Attention is all you need"
# 机构科研实力分析
python scripts/aminer_client.py --action org_analysis --org "Tsinghua University"
# 期刊论文监测(指定年份)
python scripts/aminer_client.py --action venue_papers --venue "Nature" --year 2024
# 学术问答(自然语言查询)
python scripts/aminer_client.py --action paper_qa --query "latest advances in transformer architecture"
# 专利检索与详情
python scripts/aminer_client.py --action patent_search --query "quantum computing"
```
也可以直接调用单个 API:
```bash
python scripts/aminer_client.py --action raw \
--api paper_search --params '{"title": "BERT", "page": 0, "size": 5}'
# 显式传入 --token 可临时覆盖环境变量
python scripts/aminer_client.py --token <TOKEN> --action raw \
--api paper_search --params '{"title": "BERT", "page": 0, "size": 5}'
```
**raw 模式防错规则(强制):**
1. 调用前核对函数签名(参数名与类型必须完全一致),不得「按语义猜参数」。
2. raw 参数约束以 `references/api-catalog.md` 为准;与既有认知冲突时以目录为准。
3. `paper_info` 只用于批量基础信息,参数必须是 `{"ids": [...]}`。
4. `paper_detail` 只支持单篇详情,参数必须是 `{"paper_id": "..."}`,**严禁**传 `ids`。
5. 需要多篇论文详情时:先用低成本接口筛选(如 `paper_info` / `paper_search_pro`),再只对目标子集调 `paper_detail`(用户未指定条数时默认前 10)。
6. 执行前先输出「将调用的函数名 + 参数 JSON」自查,然后再发起请求。
### 步骤3:按场景执行组合工作流
**工作流 1:学者画像**——了解学者完整学术画像(简介、研究兴趣、论文、专利、项目)。
```
学者搜索(姓名 → person_id)
↓
并行调用:
├── 学者详情(简介/教育/荣誉)
├── 学者画像(研究兴趣/经历/工作履历)
├── 学者论文(论文列表)
├── 学者专利(专利列表)
└── 学者项目(科研项目/经费信息)
```
```bash
python scripts/aminer_client.py --action scholar_profile --name "Yann LeCun"
```
**工作流 2:论文深挖**——按论文标题或关键词获取完整信息与引用关系。
```
论文搜索 / 论文高级搜索(标题/关键词 → paper_id)
↓
论文详情(摘要/作者/DOI/期刊/年份/关键词)
↓
论文引文关系(该论文引用了哪些论文 → cited_ids)
↓
(可选)批量获取被引论文基础信息
```
```bash
python scripts/aminer_client.py --action paper_deep_dive --title "BERT"
python scripts/aminer_client.py --action paper_deep_dive \
--keyword "large language model" --author "Hinton" --order n_citation
```
**工作流 3:机构分析**——分析机构学者规模、论文产出与专利数量,适用于科研竞争力评估或合作评估。
```
机构消歧 Pro(原始字符串 → org_id,处理别名/全称差异)
↓
并行调用:
├── 机构详情(简介/类型/成立时间)
├── 机构学者(学者列表)
├── 机构论文(论文列表)
└── 机构专利(专利 ID 列表,支持分页,最多 1 万条)
```
> 多家机构同名时,机构搜索会返回候选列表,请使用机构消歧 Pro 精确匹配。
```bash
python scripts/aminer_client.py --action org_analysis --org "MIT"
# 指定原始字符串(含缩写/别名)
python scripts/aminer_client.py --action org_analysis --org "Massachusetts Institute of Technology, CSAIL"
```
**工作流 4:期刊论文监测**——追踪某期刊特定年份的论文,适用于投稿调研或研究趋势分析。
```
期刊搜索(名称 → venue_id)
↓
期刊详情(ISSN/类型/缩写)
↓
期刊论文(venue_id + 年份 → paper_id 列表)
↓
(可选)批量查询论文详情
```
```bash
python scripts/aminer_client.py --action venue_papers --venue "NeurIPS" --year 2023
```
**工作流 5:论文问答搜索**——用自然语言或结构化关键词智能检索论文,支持 SCI 过滤、被引排序、作者/机构约束。
核心 API 为 `论文问答搜索`(¥0.05/次),支持:`query` 自然语言提问、`topic_high/middle/low` 细粒度关键词权重(嵌套数组 OR/AND 逻辑)、`sci_flag` 仅看 SCI、`force_citation_sort`/`force_year_sort` 排序、`author_terms`/`org_terms` 按姓名过滤、`author_id`/`org_id` 按实体 ID 过滤(推荐,利于消歧)、`venue_ids` 按会议/期刊 ID 列表过滤。
```bash
python scripts/aminer_client.py --action paper_qa \
--query "deep learning methods for protein structure prediction"
# 细粒度关键词(必须同时含 A 和 B,C 加权)
python scripts/aminer_client.py --action paper_qa \
--topic_high '[["transformer","self-attention"],["protein folding"]]' \
--topic_middle '[["AlphaFold"]]' \
--sci_flag --sort_citation
```
**工作流 6:专利分析**——检索特定技术领域的专利,或获取某学者/机构的专利组合。
```
独立检索:专利搜索(query → patent_id)→ 专利详情(摘要/申请日/申请号/受让人/发明人)
经由学者/机构:学者搜索 → 学者专利;机构消歧 → 机构专利 → 专利信息 / 专利详情
```
```bash
python scripts/aminer_client.py --action patent_search --query "quantum computing chip"
python scripts/aminer_client.py --action scholar_patents --name "Shou-Cheng Zhang"
```
### 步骤4:处理工作流之外的需求
用户需求超出上述 6 个工作流、或现有工作流无法直接覆盖时,按以下步骤执行:
1. 先阅读 `references/api-catalog.md`,确认可用接口、参数约束与响应字段。
2. 根据用户目标选择最合适的 API,设计最短可行调用链(先定位 ID,再补详情,后扩展关系)。
3. 必要时组合多个 API 完成查询,并在结果中标注 `source_api_chain` 说明数据来源路径。
4. 多种组合方案可行时,优先选择成本更低、稳定性更高且字段满足需求的方案。
5. 尽量采用「最优查询组合」,避免无差别全量取数;先低成本搜索筛选,再对小批量目标取详情。
6. 结果量大且用户未指定条数时,默认只查前 10 条详情并先返回摘要;例如命中 1000 篇论文时,不要对全部 1000 篇调用详情接口,以降低用户成本。
7. `raw` 调用必须做参数级校验:`paper_info` 用 `ids`,`paper_detail` 用 `paper_id`,不得混淆。
8. 用户未明确要求深入信息时,优先走免费路径(`paper_search` / `paper_info` / `venue_search`);确认免费接口不足后再补必要的付费接口。
9. 返回最终实体列表时必须附对应 URL;实体 ID 缺失时先补齐再输出。
> 不要因为「没有现成工作流匹配」就放弃查询,应基于 api-catalog 主动完成 API 组合。
## 论文搜索接口选型指南
用户说「搜论文」时,先判断目标是「找 ID」「筛选结果」「问答」还是「生成分析报告」,再选接口:
| 接口 | 侧重点 | 适用场景 | 成本 |
|---|---|---|---|
| `paper_search` | 标题搜索,快速拿到 `paper_id` | 已知论文标题,先定位目标论文 | 免费 |
| `paper_search_pro` | 多条件搜索与排序(作者/机构/期刊/关键词) | 主题检索,按被引量或年份排序 | ¥0.01/次 |
| `paper_qa_search` | 自然语言问答 / 主题关键词搜索 | 用户用自然语言描述需求,语义检索优先 | ¥0.05/次 |
| `paper_list_by_search_venue` | 返回更完整的论文信息(适合分析) | 需要更丰富字段做分析/报告 | ¥0.30/次 |
| `paper_list_by_keywords` | 多关键词批量检索 | 批量主题检索(如 AlphaFold + 蛋白质折叠) | ¥0.10/次 |
| `paper_detail_by_condition` | 按年份 + 期刊维度取详情 | 期刊年度监测、选刊分析 | ¥0.20/次 |
推荐路由(默认):
1. **已知标题**:`paper_search -> paper_detail -> paper_relation`
2. **条件筛选**:`paper_search_pro -> paper_detail`
3. **自然语言问答**:`paper_qa_search`(无结果时回退 `paper_search_pro`)
4. **期刊年度分析**:`venue_search -> venue_paper_relation -> paper_detail_by_condition`
补充规则(强烈建议遵守):
1. 仅按标题搜索时,务必先用 `paper_search`(免费)快速定位论文 ID。
2. 复杂语义检索(自然语言、多条件、模糊表达)优先用 `paper_qa_search`。
3. 使用 `paper_qa_search` 时,先把自然语言需求拆解为结构化条件再填字段(如年份、主题关键词、作者/机构等)。
4. `query` 与 `topic_high/topic_middle/topic_low` **互斥**:二选一,不得同时传。
5. `query` 模式直接填自然语言字符串;`topic_*` 模式先用同义词/英文变体扩展再填。
6. 示例:查询「2012 年 AI 相关论文」:
- `year` → `[2012]`
- 方案 A:`query` → `"artificial intelligence"`
- 方案 B:`topic_high` → `[["artificial intelligence","ai","Artificial Intelligence"]]`(开启 `use_topic`)
## 稳定性与失败处理策略(必读)
客户端 `scripts/aminer_client.py` 内置请求重试与回退策略,降低网络波动与瞬时服务错误对结果的影响。
- **超时与重试**:默认超时 `30s`;最大重试 `3` 次;指数退避(`1s -> 2s -> 4s`)+ 随机抖动。
- **可重试状态码**:`408 / 429 / 500 / 502 / 503 / 504`。
- **不重试场景**:常见 `4xx` 错误(参数错误、鉴权问题等)默认不重试,直接返回错误结构。
- **工作流回退**:`paper_deep_dive` 在 `paper_search` 无结果时自动回退 `paper_search_pro`;`paper_qa` 在 `query` 模式无结果时自动回退 `paper_search_pro`。
- **可追溯调用链**:组合工作流输出包含 `source_api_chain`,标明结果由哪些 API 组合产生。
## 接口速查
> 完整参数说明请阅读 `references/api-catalog.md`
| # | 接口 | 方法 | 价格 | 路径(基础域名:datacenter.aminer.cn/gateway/open_platform) |
|---|------|------|------|------|
| 1 | 论文问答搜索 | POST | ¥0.05 | `/api/paper/qa/search` |
| 2 | 学者搜索 | POST | 免费 | `/api/person/search` |
| 3 | 论文搜索 | GET | 免费 | `/api/paper/search` |
| 4 | 论文高级搜索 | GET | ¥0.01 | `/api/paper/search/pro` |
| 5 | 专利搜索 | POST | 免费 | `/api/patent/search` |
| 6 | 机构搜索 | POST | 免费 | `/api/organization/search` |
| 7 | 期刊搜索 | POST | 免费 | `/api/venue/search` |
| 8 | 学者详情 | GET | ¥1.00 | `/api/person/detail` |
| 9 | 学者项目 | GET | ¥3.00 | `/api/project/person/v3/open` |
| 10 | 学者论文 | GET | ¥1.50 | `/api/person/paper/relation` |
| 11 | 学者专利 | GET | ¥1.50 | `/api/person/patent/relation` |
| 12 | 学者画像 | GET | ¥0.50 | `/api/person/figure` |
| 13 | 论文批量信息 | POST | 免费 | `/api/paper/info` |
| 14 | 论文详情 | GET | ¥0.01 | `/api/paper/detail` |
| 15 | 论文引文关系 | GET | ¥0.10 | `/api/paper/relation` |
| 16 | 专利基本信息 | GET | 免费 | `/api/patent/info` |
| 17 | 专利详情 | GET | ¥0.01 | `/api/patent/detail` |
| 18 | 机构详情 | POST | ¥0.01 | `/api/organization/detail` |
| 19 | 机构专利 | GET | ¥0.10 | `/api/organization/patent/relation` |
| 20 | 机构学者 | GET | ¥0.50 | `/api/organization/person/relation` |
| 21 | 机构论文 | GET | ¥0.10 | `/api/organization/paper/relation` |
| 22 | 期刊详情 | POST | ¥0.20 | `/api/venue/detail` |
| 23 | 期刊论文 | POST | ¥0.10 | `/api/venue/paper/relation` |
| 24 | 机构消歧 | POST | ¥0.01 | `/api/organization/na` |
| 25 | 机构消歧 Pro | POST | ¥0.05 | `/api/organization/na/pro` |
| 26 | 按期刊检索论文 | GET | ¥0.30 | `/api/paper/list/by/search/venue` |
| 27 | 论文批量查询 | GET | ¥0.10 | `/api/paper/list/citation/by/keywords` |
| 28 | 按年份与期刊查论文详情 | GET | ¥0.20 | `/api/paper/platform/allpubs/more/detail/by/ts/org/venue` |
## 参考资料
- 全部 API 参数文档:`references/api-catalog.md`
- Python 客户端源码:`scripts/aminer_client.py`
- 官方文档:https://open.aminer.cn/open/docs
- 控制台:https://open.aminer.cn/open/board?tab=control使用说明
# AMiner 学术数据查询与分析 基于 AMiner 开放平台 API,一句话完成学者画像、论文深挖、机构分析、期刊监测、学术问答与专利检索。 ## 使用 先在 AMiner 控制台生成令牌并配置环境变量: ```bash export AMINER_API_KEY="<你的令牌>" ``` 然后直接描述需求,例如: ```text 帮我查一下吴恩达的学术画像,包括研究方向、代表作和专利。 深挖一下《Attention Is All You Need》这篇论文及其引用链。 分析一下清华大学计算机学科的论文产出情况。 ``` ## 工作原理 技能封装 AMiner 开放平台 28 个 API,按 6 大组合工作流自动编排调用链: 1. **学者画像**:搜索 → 详情 + 画像 + 论文 + 专利 + 项目 2. **论文深挖**:搜索 → 详情 → 引文链 3. **机构分析**:消歧 → 详情 + 学者 + 论文 + 专利 4. **期刊监测**:期刊搜索 → 按年份取论文 5. **学术问答**:自然语言语义检索 6. **专利分析**:专利检索与组合查询 客户端内置超时重试、指数退避与工作流回退,结果附实体链接与调用链说明。API 参数详见 `references/api-catalog.md`。
支持平台:Qoder · QoderWork · Claude · Codex 等 AI 编程助手