Python3,一行代码解析地址信息,原来物流单的地址是这样拆分。

举报
Carl_奕然 发表于 2023/02/27 09:51:39 2023/02/27
【摘要】 1、引言小屌丝:鱼哥,你说咱们发快递时填写的地址信息,到后台怎么能看清楚写的对不对呢?小鱼:这种事情还要问? 你没在电商行业混过??小屌丝:那不都是用java实现的嘛,我想问Python如何实现呢?小鱼:这,很简答的。一行代码的事。小屌丝:不应该啊,平时你都是推三阻四的,今天咋这样痛快?小鱼:今天心情好。小屌丝:鱼哥,你对我就不能坦诚一点吗?小鱼:你想不想学?小屌丝:必须的啊,小鱼那我就开始...

1、引言


小屌丝:鱼哥,你说咱们发快递时填写的地址信息,到后台怎么能看清楚写的对不对呢?
小鱼:这种事情还要问? 你没在电商行业混过??
小屌丝:那不都是用java实现的嘛,我想问Python如何实现呢?
小鱼:这,很简答的。一行代码的事。
小屌丝:不应该啊,平时你都是推三阻四的,今天咋这样痛快?
小鱼:今天心情好。
小屌丝:鱼哥,你对我就不能坦诚一点吗?
小鱼:你想不想学?
小屌丝:必须的啊,
小鱼那我就开始。

2、代码示例


2.1 简介


平时我们都遇到过,一整行的地址,看着非常不方便,
那如何能拆分出省市县街道单元呢?
在python的第三方库jionlp 就可以实现。

为啥要推荐jionlp 这个第三方库,

  • 1、一行代码就可以搞定;
  • 2、python流;
  • 3、实现简单,安装方便;
  • 4、功能强大,有自动补全功能;


2.2 安装


老规矩,pip安装

pip install jionlp


其它安装方式,直接看这两篇:


2.3 实战


2.3.1 提取省市区信息


使用jionlp的parse_location() 方法,来提取省市区的信息

# -*- coding:utf-8 -*-
# @Time   : 2022-05-16
# @Author : carl_DJ

import jionlp  as jio

#随便输入地址
raw_addres = "辽宁省大连市沙河口区富国街居委会"
#解析地址信息
jio.parse_location(raw_addres)


运行结果

{
    "province": "辽宁省",
    "city": "大连市",
    "county": "沙河口区",
    "detail": "富国街居委会",
    "full_location": "辽宁省大连市沙河口区富国街居委会",
    "orig_location": "辽宁省大连市沙河口区富国街居委会"
}


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


设置参数town_village=True,还可以额外尝试提取出街镇乡、村或居委会信息等级别的信息字段:

# -*- coding:utf-8 -*-
# @Time   : 2022-05-16
# @Author : carl_DJ

import jionlp  as jio

#随便输入地址
raw_addres = "浙江省杭州市江干区笕桥街道明桂北苑社区居委会"
#解析地址信息
jio.parse_location(raw_addres,town_village=True)


运行结果

{
    "province": "浙江省",
    "city": "杭州市",
    "county": "上城区",
    "detail": "笕桥街道新风路明桂北苑社区居委会",
    "full_location": "浙江省杭州市上城区笕桥街道明桂北苑社区居委会",
    "orig_location": "浙江省杭州市江干区笕桥街道明桂北苑社区居委会",
    "town": "笕桥街道",
    "village": "None"
}


2.3.3 自动补全省市信息


若地址信息中缺失省市信息,使用**parse_location()**会自动关联并补全相关信息:

# -*- coding:utf-8 -*-
# @Time   : 2022-05-16
# @Author : carl_DJ

import jionlp  as jio

#随便输入地址
raw_addres = "江干区笕桥街道新风路明桂北苑社区居委会"
#解析地址信息
jio.parse_location(raw_addres)


运行结果

{
    "province": "浙江省",
    "city": "杭州市",
    "county": "上城区",
    "detail": "笕桥街道新风路明桂北苑社区居委会",
    "full_location": "浙江省杭州市上城区笕桥街道新风路明桂北苑社区居委会",
    "orig_location": "江干区笕桥街道新风路明桂北苑社区居委会"
}


3、总结


看到这里,今天分享就差不多该结束了。

我是小鱼

  • CSDN 博客专家;
  • 阿里云 专家博主;
  • 51CTO博客专家;
  • 51认证讲师;
  • 金牌面试官;

关注我,带你学习更多更有趣的Python知识。



【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。