Python 中一个好用的地址解析工具cpca(chinese_province_city_area_mapper)

简介

gihub地址:https://github.com/DQinYuan/chinese_province_city_area_mapper

cpca---chinese province city area,一个用于提取简体中文字符串中省,市和区并能够进行映射,检验和简单绘图的python模块

["徐汇区虹漕路461号58号楼5楼", "泉州市洛江区万安塘西工业区"]

|省 |市 |区 |地址 |
|上海市|上海市|徐汇区|虹漕路461号58号楼5楼 |
|福建省|泉州市|洛江区|万安塘西工业区 |

“地址”列:代表去除了省市区之后的具体地址

安装介绍

该库目前仅支持Python3,在命令行直接进行安装即可:pip install cpca

windows 中需要C/C++编译环境的支持,需要下载另外的软件,然后再进行安装http://go.microsoft.com/fwlink/?LinkId=691126

编译环境的安装教程:https://o7planning.org/11467/install-microsoft-visual-cpp-build-tools

基本使用方法

常规用法

会自动补全相应的省、市、区

常规用法
import cpca

location_str = ["徐汇区虹漕路461号58号楼5楼", 
                "泉州市洛江区万安塘西工业区", 
                "北京朝阳区北苑华贸城"]

data=cpca.transform(location_str)

data

l=['灵宝市函谷关镇']

df = cpca.transform(l)
df

df.loc[0,"市"]
重名情况

中国的区级行政单位非常的多,经常有重名的情况,比如“北京市朝阳区”和“吉林省长春市朝阳区”,当有上级地址信息的时候,cpca 能够根据上级地址 推断出这是哪个区,但是如果没有上级地址信息,单纯只有一个区名的时候, cpca 就没法推断了,只能随便选一个了, 通过 umap 参数你可以指定这种情况下该选择哪一个

重名情况

从例子可以看出,umap 字典的 key 是区名,value 是区的 adcode,这里 110105 就是北京市朝阳区的 adcode,具体的 adcode 可以去全国行政区划查询平台上查询

全国行政区划查询平台:http://xzqh.mca.gov.cn/map

历史相关文章


以上是自己实践中遇到的一些问题,分享出来供大家参考学习,欢迎关注微信公众号:DataShare ,不定期分享干货

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据人阿多

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值