整理了一份最新版省市区数据,带行政区划代码,要的拿走。

2016-12-10 12:14:06 +08:00
 chnhyg

项目地址: https://github.com/chnhyg/province-city-district

数据来源: http://www.stats.gov.cn/tjsj./tjbz/xzqhdm/

5063 次点击
所在节点    程序员
23 条回复
canbingzt
2016-12-10 12:45:14 +08:00
http://www.mca.gov.cn/article/sj/tjbz/a/
民政部每个月末会推出新的行政区划码
konakona
2016-12-10 14:16:25 +08:00
好东西,感谢!
HuangLibo
2016-12-10 14:20:16 +08:00
看了下 JSON 的结构,感觉需要调整一下,然后整合为一个大的 JSON ,会更加实用。
抓取一部分说一说:
{
"cityID": 1,
"provinceID": 1,
"divisionCode": "110100",
"cityName": "市辖区"
},
{
"cityID": 2,
"provinceID": 1,
"divisionCode": "110200",
"cityName": "县"
},
{
"cityID": 3,
"provinceID": 2,
"divisionCode": "120100",
"cityName": "市辖区"
},
{
"cityID": 4,
"provinceID": 2,
"divisionCode": "120200",
"cityName": "县"
},
{
"cityID": 5,
"provinceID": 3,
"divisionCode": "130100",
"cityName": "石家庄市"
},
比如这样的数据,并在同一级别里有什么作用?比较常见的做法是按 省-市-县 来嵌套结果,一个 JSON 可以清晰明了地把所有事情都做了。
chnhyg
2016-12-10 14:34:21 +08:00
@HuangLibo 嗯,暂时就分三个吧,不做调整。需要一整个的话可以转换一下,工作量不多。
其实之前有考虑过这种格式:
```
[
{
"id": 1,
"parentID": null,
"level": 1,
"name": "广东"
},
{
"id": 2,
"parentID": 1,
"level": 2,
"name": "深圳"
}
]
```
HuangLibo
2016-12-11 12:17:33 +08:00
@chnhyg 我的意思是 city 应该是嵌套在 province 内的一个数组,而非并列在同一个级别。
chnhyg
2016-12-11 20:25:17 +08:00
@HuangLibo 理解你的意思,不太认同用嵌套,嵌套的数据结构更加复杂。
1010011010
2016-12-12 04:56:18 +08:00
@HuangLibo 嵌套的话就不能一次遍历查询的到了
fighter2011
2016-12-12 09:38:58 +08:00
增加一下邮编之类的吧
chnhyg
2016-12-12 09:48:13 +08:00
@fighter2011 有没有可靠稳定的数据来源?
fighter2011
2016-12-12 10:11:26 +08:00
@chnhyg 我们先前是调用别人的接口获取邮编的,调用了聚合的接口。邮政官网不知道有没有稳定的
beginor
2016-12-12 12:48:10 +08:00
有界线坐标就更好了
figofuture
2016-12-12 14:58:14 +08:00
已拿走,谢谢,😄
1010011010
2016-12-12 16:54:16 +08:00
130185:{id: "130185", pid: "130100", name: "鹿泉市", area_code: "0311", level: "3", type: "区"},
130200:{
id: "130200",
pid: "130000",
name: "唐山市",
area_code: "0315",
level: "2",
type: "市"
},
130202:{
id: "130202",
pid: "130200",
name: "路南区",
area_code: "0315",
level: "3",
type: "区"
},

@chnhyg 这是我现在用的。

用 id 作下标,可能比数组慢,但是不用遍历查询。

能不能做这种格式的
chnhyg
2016-12-12 17:04:05 +08:00
@1010011010 这个不适合大多数人,不能在 repo 里改,如果你需要的话,我单独给你做一份?
1010011010
2016-12-12 17:29:11 +08:00
@chnhyg 只能数组?还是格式不行?
chnhyg
2016-12-12 17:39:11 +08:00
@1010011010 repo 是给大家看的,得让大多数人接受才行。
aleen42
2016-12-12 17:51:22 +08:00
这种项目我第二次见了= =
1010011010
2016-12-12 17:58:11 +08:00
@chnhyg ?! 我这个让人无法接受吗?有这么惨吗
chnhyg
2016-12-12 21:27:57 +08:00
@1010011010 倒不是说让人无法接受,只是说让大多数用户更轻松地去接受。
1010011010
2016-12-14 11:47:08 +08:00
@chnhyg 所以说怎样让大多数用户更轻松地去接受呢?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/326631

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX