Skip to content

中国行政区划数据基础设施后统计局时代的可持续更新方案

GB2260 国标(省/市/县,1980–2023)+ NBS 统计用区划代码五级(省/市/县/乡/村,2009–2023)历年快照。2023 基线 + 社区 Patch 增量 + 多源合成,数据与代码彻底解耦。

三行上手

bash
npm i -g @cndiv/cli
cndiv hydrate --year=2023          # 下载 @cndiv/source-2023 → ~/.cndiv/cache.db
cndiv export --year=2023 --output=divisions-2023.csv

在代码里查询:

ts
import { openCache } from '@cndiv/reader';

const cn = openCache();                    // 默认 ~/.cndiv/cache.db,只读
cn.findByCode('110101000000', 2023);       // → 东城区
cn.getChildren('110000000000', 2023, { skipPlaceholder: true }); // → [东城区, 西城区, ...]
cn.close();

数据规模一览

2023 · NBS 五级全量 · cache.db
每下探一级,行政单元数量放大近一个数量级——村级独占全量 93%
102103104105
省级省/自治区/直辖市
31
地级地级市/州/盟
342
县级县/区/县级市
2,975
乡级乡/镇/街道
41,351
村级村委会/居委会
620,572
对数刻度(横轴每格 ×10)。总量 665,271 条中村级 620,572 条,占 93.3%;这也是为什么「零爬虫、注水本地 SQLite」的分发方式必要——数据体量集中在最底层。

它解决什么

原数据源国家统计局 stats.gov.cn(统计用区划代码和城乡划分代码)自 2024 年起停止公开发布2026 年起统一转向「国家地名信息库」(dmfw.mca.gov.cn),全量五级数据已无官方活源。

v2 架构从「镜像一个源」转为 「2023 基线快照 + 社区 Patch 增量 + 多源合成」,并把数据与代码彻底解耦:

构建期(维护者)                     分发                用户运行期
历史源/dmfw/镜像 → 合成 → SQLite → NPM @cndiv/source-YYYY → cndiv hydrate → ~/.cndiv/cache.db
                                  + GitHub Release 归档        + patches/*.json  → cndiv apply-patch

详见 为什么是 v2

数据来源于公开政府网站(国家统计局、民政部国家地名信息库),仅供学习与研究使用。代码以 MIT 许可。