四川平昌县建设局网站,长沙企业名录黄页,如何建设网站网站,拙人营造设计公司官网背景
最近在折腾一个好玩的库#xff0c;capa 实现地址的格式化输出。我看的教程是这样的#xff1a;
location_str [徐汇区虹漕路461号58号楼5楼, 泉州市洛江区万安塘西工业区]
import cpca
df cpca.transform(location_str)
df在正式的运行代码…背景
最近在折腾一个好玩的库capa 实现地址的格式化输出。我看的教程是这样的
location_str [徐汇区虹漕路461号58号楼5楼, 泉州市洛江区万安塘西工业区]
import cpca
df cpca.transform(location_str)
df在正式的运行代码之前我在想我输入的地址为什么不能是随机的呢因为结合很多的应用场景我觉得问题的解决办法都是相通的顺便还能帮官方的测试一下好不好用。于是我开始了倒腾找到了一个模拟地址生成的库 Faker。
在正式使用之前我也看到了这样的帖子不使用任何的pip包实现。文章地址 这篇文章几乎是从最基础的方法开始生成对应的随机信息。个人建议作为初学者可以做这样的尝试可以不断的提升对于python语法特性的掌握程度但是作为对python有一定的熟悉程度或者工程师我们首选的还是pip包的组件。一是拿来就用省时省力二是可以用合适呢该有的时间研究一下对方的源码提升自己的工程化思维和技术的提升。 Faker的使用API可以参照这篇博客关于Faker的使用我会换一期视频讲解。
安装fake
pip install faker随机生成10个地址
from faker import Faker# 创建Faker对象
fake Faker(zh_CN)# 生成10个随机地址
random_addresses []
for _ in range(10):address fake.address()# 生成的地址带区域编号去除random_addresses.append(address.split( )[0])for address in random_addresses:print(address)生成的地址如下 可以明显的感觉到这比我们自己手动的书写代码实现随机的信息生成效率、可实用性高多了。 cpca地址解析
安装cpca包
pip install cpca测试为了效果更加明显我写了一条我造的数据
random_addresses.append(湖北省武汉市香港路111号)import cpcadf cpca.transform(random_addresses)
print(df)最终的效果如下 还可以输出对应的省、市、区的位置只需要增加如下的参数
pos_sensitiveTrue 官方文档的解释pos_sensitive:如果为True则会多返回三列分别提取出的省市区在字符串中的位置如果字符串中不存在的话则显示-1 可见效果还是很nice的基本上省、市、地址都能很好的提取出来可用于部分的demo展示地址信息完整的话也可以用于实际的生产。但是可以看到部分地址的市、区信息没有提取出来。因为地址是虚造出来的地址的准确性也没有得到检验。
如果遇到更加复杂的场景如获得文本的市、区信息这个就显得有些吃力了。更多的复杂场景可能就需要用到NLP了可以参考文章基于PaddleNLP的快递单信息抽取-实体抽取
参考文章
[使用python提取中文地址描述中的省市区信息](