1认证
与 MCP 用同一套令牌,在令牌中心生成。两种传法都行:
# 推荐:请求头 -H "Authorization: Bearer <令牌>" # 或者:查询参数(方便浏览器里直接点开看) ?token=<令牌>
查询参数会留在浏览器历史和服务端访问日志里,共享链接或写进脚本时用请求头。
2端点
| 方法 | 路径 | 说明 |
|---|---|---|
| GET | /api/v1/search | 检索,返回列表 |
| GET | /api/v1/paper/<id> | 取一篇的全部字段 |
| GET | /api/v1/stats | 库规模与类型分布 |
/api/v1/search 的参数
| 参数 | 类型 | 说明 |
|---|---|---|
| q | 字符串 | 关键词,中英文均可。命中题目、摘要、检测对象、原理、期刊、DOI |
| sensor_type | 字符串 | 传感器类型,如 电化学生物传感器 |
| analyte | 字符串 | 检测对象,如 多巴胺 |
| year | 整数 | 发表年份 |
| limit | 整数 | 每页条数,1–100,默认 20 |
| offset | 整数 | 偏移量,用于翻页 |
3调用示例
curl
curl -s -H "Authorization: Bearer <令牌>" \ "https://biosensor.mtc-lab.cn/api/v1/search?q=适配体&limit=5"
Python
import requests
BASE = "https://biosensor.mtc-lab.cn/api/v1"
H = {"Authorization": "Bearer <令牌>"}
r = requests.get(f"{BASE}/search",
params={"q": "适配体", "sensor_type": "电化学生物传感器", "limit": 20},
headers=H, timeout=30)
r.raise_for_status()
data = r.json()
print(data["total"], "篇命中")
for p in data["results"]:
print(p["year"], p["title"][:60], "|", p["sensitivity"][:40])
# 取一篇的全部字段
pid = data["results"][0]["id"]
full = requests.get(f"{BASE}/paper/{pid}", headers=H, timeout=30).json()
print(full["principle"])
print(full["oss_url"])
翻页取全量
rows, offset = [], 0
while True:
d = requests.get(f"{BASE}/search",
params={"sensor_type": "荧光生物传感器",
"limit": 100, "offset": offset},
headers=H, timeout=60).json()
rows += d["results"]
offset += d["count"]
if d["count"] == 0 or offset >= d["total"]:
break
print(len(rows))
返回字段
/search 返回 {total, count, offset, results[]},列表项为精简字段;/paper/<id> 返回全字段。
| 字段 | 列表 | 详情 | 说明 |
|---|---|---|---|
| id / doi / pmid | ✓ | ✓ | 标识 |
| title / authors / journal / year | ✓ | ✓ | 题录,来自 PubMed |
| sensor_type | ✓ | ✓ | 传感器类型 |
| analyte | ✓ | ✓ | 检测对象与样品基质 |
| sensitivity | ✓ | ✓ | 检出限、线性范围等,逐字摘自原文 |
| keywords | ✓ | ✓ | 中文关键词 |
| oss_url | ✓ | ✓ | 原文 PDF 公网链接 |
| abstract_en / abstract_zh | — | ✓ | 英文摘要来自 PubMed,中文为其译文 |
| composition | — | ✓ | 传感器构成,逐层,换行分隔 |
| principle / performance | — | ✓ | 检测原理与效应效果 |
| diagram_png | — | ✓ | 构成示意图 PNG 链接 |
除题录与英文摘要外,其余字段由团队自建模型 yunyi-2.0 从全文抽取。灵敏度里的数值要求逐字摘录、不得编造,但机器抽取仍可能出错,用于严肃结论前请核对原文——每条都附了 PDF 链接。