前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一行代码实现Python地址信息解析!

一行代码实现Python地址信息解析!

作者头像
快学Python
发布2022-11-28 14:40:31
1.6K0
发布2022-11-28 14:40:31
举报
文章被收录于专栏:快学Python快学Python

库的安装与简介

大家好,我是黄伟🤭

在日常数据处理的过程中,假如你获取了一个完整的地址信息。如果需要你从该地址中解析出省、市、县三级地名,或乡镇、村、社区两级详细地名,应该怎么办呢?

那么,今天黄同学就来教你如何使用一行代码,实现地址的快速解析。

首先,我们需要用到一个第三方库,因此可以提前安装一下。

代码语言:javascript
复制
pip install jionlp -i https://pypi.douban.com/simple/

为了实现快速的安装,我们这里选择使用“豆瓣镜像”进行安装,当然你也可以选择其它的国内源下载。

库的使用

安装并导入该库后,就可以进行使用了。

代码语言:javascript
复制
import jionlp as jio
Ⅰ基础省市信息的提取

我们任意给出一个完整的地址,即可提取出其中的省市区信息。

代码语言:javascript
复制
text = '四川省成都市武侯区红牌楼街19号红星大厦9楼2号'
res = jio.parse_location(text)
print(res)

最终效果如下:

Ⅱ 自动补全省市信息

假如给定的地址信息不完整,没有省市信息,那么我们是否可以实现地址的自动补全,并进行正确的提取呢?

其实上述方法,本身就可以实现省市信息的 自动补全。

代码语言:javascript
复制
text = '武侯区红牌楼街道19号红星大厦9楼2号'
res = jio.parse_location(text)
res

最终效果如下:

Ⅲ 街镇乡、村或居委会信息提取

通过将参数town_village设置为True,即可实现这个需求。

代码语言:javascript
复制
text = '江苏省南通市崇川区陈桥街道33号'
res = jio.parse_location(text,town_village=True)
res

最终效果如下:

Ⅳ 自动将旧地名映射为新地名

国内行政区划有变动,支持使用change2new(bool)自动将旧地名转换为新地名,仅限省、市、县三级的转换。

2020年国务院批准,港闸区变为了崇川区。

代码语言:javascript
复制
text = '港闸区陈桥街道33号'
res = jio.parse_location(text, change2new=True, town_village=True)  
res

最终效果如下:

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-11-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 快学Python 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 库的安装与简介
  • 库的使用
    • Ⅰ基础省市信息的提取
      • Ⅱ 自动补全省市信息
        • Ⅲ 街镇乡、村或居委会信息提取
          • Ⅳ 自动将旧地名映射为新地名
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档