随着互联网和快递行业的飞速发展,在中国广袤的大地上,全国行政区域规划星罗棋布,要查询一个行政单元如果不运用科技的手段查询可是非常的不易,现在,全国行政区划查询API的作用越来越大,它可以帮助我们对地址进行精细的区划。那么,你知道这个全国行政区划查询API如何调用吗?请登录挖数据平台做进一步的了解。
全国行政区划查询API(应用程序即:Application Programming Interface)。通过用API接口完成各种各样的数据共享和查询。比如通过挖数据的全国行政区划查询API,可以了解到全国行政区划,以及各地区的邮政编码等,这些信息都是对接公安系统数据库可保证其准确性。有很多企业都会用到全国行政区划查询API,比如高德地图和百度地图等,其与接口连接之后可以获得行政区划的相关信息,之后用户就可以通过自主查询获得相关数据。
后附API部分代码信息:
接口简介:
2022年度全国统计用区划代码和城乡划分代码更新维护的标准时点为2022年10月31日。
此次发布内容为2022年全国统计用区划代码(12位)和城乡分类代码(3位),地域范围为国家统计局开展统计调查的全国31个省(自治区、直辖市),316个地级市,2832个市区县,39318乡镇街道,588741村委会/居委会,未包括我国台湾省、香港特别行政区和澳门特别行政区。同时提供数据源下载。
Api文档:
子接口:
全国省市区及村委会/居委会级数据
接口地址: https://www.wapi.cn/api_detail/104/239.html
返回格式:json,xml
请求方式:POST,GET
POST 请求需要设置Header头:Content-Type: application/x-www-form-urlencoded;charset=utf-8
请求说明:
名称 | 必填 | 类型 | 说明 | 示例参数另存 |
appid | 是 | String | 应用ID,在后台我的应用查看或者添加 | 1 |
city_id | 否 | String | 地级市ID | 02 |
county_id | 否 | String | 区县市ID | 03 |
format | 否 | String | 返回数据格式类型,每个接口已经说明支持返回格式:json,xml | json |
jiedao | 否 | String | 乡镇街道ID | 001 |
parent_id | 否 | String | 城市行政代码Id,可以通过获取省市id返回。 使用获取省市ID时,不传此值返回省份,否则返回下级城市列表 | 35 |
sign | 是 | String | 1.使用Md5方式验证,参数按一定规则md5后返回的字符串,详情点击这里阅读 2.使用Hash验证方式,直接跟上密钥即可。 通过我的应用里面修改验证方式 | 52a32be274a5c537bbf7a53e2d66c09f |
返回参数说明:
名称 | 必填 | 类型 | 说明 | 示例参数另存 |
city_id | 否 | String | 地级市ID | 02 |
city_name | 是 | String | 城市名称 | 南华社区居委会 |
codeid | 否 | Integer | 状态码,返回10000状态都会进行计费。具体说明可查看状态码说明 | 10000 |
county_id | 否 | String | 区县市ID | 03 |
curtime | 否 | String | 当前服务器时间戳 | 1677225912 |
full_spell | 否 | String | 省市名称全拼 | NanHuaSheQuJuWeiHui |
initials | 否 | String | 省市名称拼音缩写 | nhsqjwh |
jiedao | 否 | String | 乡镇街道ID | 001 |
juweihui | 否 | String | 居委会/村委会编号 | 020 |
message | 否 | String | 请求状态说明 | 操作成功! |
parent_id | 否 | String | 城市行政代码Id,可以通过获取省市id返回。 使用获取省市ID时,不传此值返回省份,否则返回下级城市列表 | 35 |
retdata | 否 | Array | 回数据集合,可能是数据、对象或者字符串 |
状态码说明:
状态码 | 说明 |
10000 | 返回成功 |
10001 | appid必须指定,可以我的应用里面查看 |
10002 | sign值必须指定,加密规则请前往帮助中心查看 |
10003 | sign值验证不通过,加密规则请前往帮助中心查看 |
10004 | 时差不能超过10分钟,可以不传递这个参数,注意时间戳单位是秒 |
10005 | appid错误,请检查appid值,前往会员中心->我的应用查看或添加 |
10006 | 当前IP地址未授权,请前往用户中心->我的应用添加ip{@info} |
10007 | 应用被禁用,请联系客服处理 |
10008 | 应用内没有该接口,请到我的应用里面添加这个接口 |
10009 | api接口不存在 |
10010 | 您没有添加该api接口 |
10011 | api已经到期 |
10012 | 没有订购任何api,请前往购买后再操作 |
10013 | 该接口已经暂停使用 |
10014 | 未知的错误,可以联系客服处理 |
10015 | 参数个数错误 |
10019 | {@info} |
10017 | time必须是整型 |
10018 | 次数不足 |
10020 | 子接口不存在,可能已经被关闭 |
10021 | 服务器发生错误 |
10022 | 帐户余额不足,请充值! |
10023 | 订单提交成功,等待回调结果 |
10024 | 调试模式数据 |
10025 | 查无数据 |
请求示例:
#!/usr/bin/python3
# -*- coding: UTF-8 -*-
#该代码为python3.7示例代码
import ssl,time,hashlib,string
from urllib import request,parse,error;
from urllib.parse import quote
api_url = 'https://登录后显示/api/104/239';
appid = '应用id';#在后台我的应用查看;
secret = '应用密钥';#在后台我的应用查看;
data = {
'appid':'1',
'city_id':'02',
'county_id':'03',
'format':'json',
'jiedao':'001',
'parent_id':'35',
};
data['appid'] = appid;
data['time'] = round(time.time());#当前服务器时间
keysArr = list(data.keys()) #取出字典key
keysArr.sort()#对字典key进行排序
md5String = '';
params = []
for key in keysArr:
if data[key]:
val = str(data[key])
md5String+=key+val
params.append(key + "=" + val )
md5String += secret;
m = hashlib.md5()
b = md5String.encode(encoding='utf-8')
m.update(b)
sign = m.hexdigest()
params.append('sign='+sign)#加入计算后的sign值去请求
params = '&'.join(tuple(params)); #把列表转成元组后用&分隔,最终转换成字符串 a=b&c=d&e=f
ssl._create_default_https_context = ssl._create_unverified_context
url = api_url+'?'+params;
url = quote(url, safe=string.printable)
req = request.Request(url)
opener = request.build_opener()
r = opener.open(fullurl=req)
doc = r.read();
print(doc.decode('utf-8'))