开放接口

把月旦评的众包画像数据接入你的应用

月旦评当前收录 1182 位历史人物的多维度众包画像:九维得分、标签赞成率、功业名言、榜单与争议数据,全部以 JSON 免费开放。任何网站、应用、Bot、研究项目都可以直接调用,无需鉴权、无需注册。

只读接口跨域开放(CORS *),浏览器端也能直接 fetch。写接口按 IP 限频。调用时请署名「数据来源:月旦评」并链接回对应人物页。

基础约定

Base URLhttps://yuedanping.cn/api/v1
返回结构{ "ok": true, "data": ..., "meta": {...} },失败 { "ok": false, "msg": "..." }
编码UTF-8 JSON
跨域只读接口支持 CORS,可直接前端调用
写操作POST,JSON body 或表单均可,按 IP 限频

只读数据接口

方法路径说明
GET/stats全站概览:人物、标签、投票、评论总量(缓存 5 分钟)
GET/dimensions九个评价维度及标签数量
GET/persons人物列表,支持 page、per_page、category、q(搜索)
GET/persons/{slug}人物画像:九维得分、标签赞成率、功业名言
GET/tags/{slug}标签详情:挂载该标签的全部人物及赞成率(缓存 5 分钟)
GET/rankings榜单,type=all|wisdom|controversy、limit
GET/quiz/match向量匹配:传九维分值(?wisdom=80&charisma=70...),返回最相近的 3 位人物
GET/daily/state每日一评:今日辩题与实时票况

互动写接口

方法路径说明
POST/vote标签投票:person_tag_id、vote(1 赞成 / 0 反对)
POST/tags/submit提交新标签:person_slug、tag_name、dimension_id
POST/entries/submit提交功业 / 名言:kind=achievement|quote
POST/entries/vote条目投票:entry_id、vote
POST/compare/vote对比投票:a_id、b_id、winner_id
POST/daily/vote每日一评投票:vote(1 / 0),单 IP 每日一票

示例

# 全站概览
curl https://yuedanping.cn/api/v1/stats
# 搜索人物
curl "https://yuedanping.cn/api/v1/persons?q=诸葛亮"

# 人物画像(九维得分 + 标签票数)
curl https://yuedanping.cn/api/v1/persons/zhugeliang
# 「深谋远虑」标签都挂在谁身上
curl "https://yuedanping.cn/api/v1/tags/%E6%B7%B1%E8%B0%8B%E8%BF%9C%E8%99%91"

# 用九维向量找最相近的古人
curl "https://yuedanping.cn/api/v1/quiz/match?wisdom=95&virtue=80&style=70"

# 标签投票(赞成)
curl -X POST https://yuedanping.cn/api/v1/vote \
  -H "Content-Type: application/json" \
  -d '{"person_tag_id": 123, "vote": 1}'

批量数据集

接口https://yuedanping.cn/api/v1/export/persons
静态文件https://yuedanping.cn/data/persons.json
记录数1182 人
缓存1 小时

一次拉取 1182 位人物的结构化画像:external_id、name、slug、url、dynasty、birth_year、death_year、category{both}、bio、dimensions[]、top_tags[]。维度只导出已有标签数据的项,避免 0 分误读。任何平台均可使用,通过 external_id 与 slug 即可映射回本站人物页。

使用约定

① 署名「数据来源:月旦评」,并链接回对应人物页或本站首页。② 请合理控制频率,批量抓取优先使用数据集而非逐页请求。③ 数据来自大众投票,仅代表公众印象,非学术定论,转载时请保留此说明。