中国历史工具集
把任意年份对应到中国朝代 / 年号 / 历史时期, 反向亦可。基于上海图书馆开放数据平台, 数据清洗过程透明可审计 —— 每一处改动都能追溯到上图原始 URI。
你能用它做什么
- 🏛️ 双向查询 —— 名称 → 起止年份; 年份 → 多个并行政权列表
- 🪨 完整时间线 —— 旧石器 / 新石器 史前段一直到清
- 📚 数据源可选 —— 上古纪年是真实的学术分歧, 由你选择信任哪个
- 🧭 同名消歧 —— 重名政权各归其位(
夏(窦建德)≠ 上古夏); 年号有歧义时报错而非瞎猜 - 🌐 支持别名 —— 传入
aliases表后,Neolithic/Kangxi/Tang等也能解析
两分钟上手
import chhiskit
# 名称 → 年份
chhiskit.get_age_from_cultural_period("康熙", level="period")
# → (1662.0, 1722.0)
chhiskit.get_age_from_cultural_period("唐", level="dynasty")
# → (618.0, 907.0)
chhiskit.get_age_from_cultural_period("新石器", level="epoch")
# → (-10000.0, -2070.0)
# 年份 → 所有匹配的政权(三国 / 隋末等会有多个并行)
[m.dynasty_id for m in chhiskit.get_cultural_periods_from_year(250)]
# → ['三国', '吴', '蜀', '魏']
[m.dynasty_id for m in chhiskit.get_cultural_periods_from_year(619)]
# → ['唐', '夏(窦建德)', '梁', '楚', ...] # 隋末群雄并起
# BP 纪年(碳十四惯例, 1950 为参考点)
chhiskit.get_age_from_cultural_period("商", level="dynasty", anno_domini=False)
# → (3550.0, 2996.0) # BP 模式下 begin 较老在前
# 外文别名
chhiskit.get_age_from_cultural_period(
"Neolithic", level="epoch",
aliases={"新石器": {"Neolithic", "Neo"}},
)
# → (-10000.0, -2070.0)
下一步
- 📖 快速开始 —— 安装并跑通第一个查询
- 📚 API 参考 —— 两个函数每一个参数 + 实例
- 🗺️ 历史时期参考表 ——
EPOCH_MAP+PREHISTORIC_EPOCHS - 🕰️ 数据源 —— 各源分歧一览与选择方法
数据来源
| 来源 | 用于 |
|---|---|
| 上海图书馆开放数据平台 | 底表 —— 朝代 / 年号 / 帝王 |
| 夏商周断代工程 (2000) | 上古纪年(source="xsz", 默认) |
| 万国鼎《中国历史纪年表》(中华书局, 1956) | 国号 / 朝代起讫(source="wgd") |
数据随包分发 —— 运行时不需要联网。