本文共 490 字,大约阅读时间需要 1 分钟。
今天有位朋友请教,如何在不联网的情况下,从根据几个地址获取所在国家的ISO编码?
比如: 快递地址是西安市丈八六路12小区,国家ISO编码: CHN
我解决思路是:
1、首先要从几个地址拼接在一起,然后从中提取信息,城市、省份/State或者国家 ,因为这个地址中不一定包含省和国家
2、获得信息之后去哪里找对应关系,比如如果是个城市,如何找到所属国家
第一个问题的解决办法我想到2种。就是通常说的,Named Entity Recognition.
方法一,用python 工具包geotext, 。 我刚开始计划用geograpy,但是安装2次都失败了。后来我的geotext更简单。
可以看到获取国家和城市了。
方法二、用结巴分词,然后根据词性获取。
可以看到这个里面获取的数据有很大的误差。
解决第二个问题的办法是:
我在看到mysql有word.sql, 这个文件中包括了世界上国家、城市、State关系。
,。
获取这个数据在本地本地建立数据库,然后用方案一获取的值去这个里面查询。
先从国家查,然后从state查询,最后从city查询。
就可以获取到国家的ISO编码
转载地址:http://gekai.baihongyu.com/