文字地理定位
Posted
技术标签:
【中文标题】文字地理定位【英文标题】:Textual geolocation 【发布时间】:2019-05-28 14:39:29 【问题描述】:我需要对单个国家开发项目数据库中的一系列条目进行地理定位。我对每个项目都有一个简短的概要,我想在其中识别市政当局(甚至更大的政治实体),以便以后使用 GoogleMaps API 对每个项目进行地理定位。
我正在尝试在不使用自然语言处理的情况下提取地理信息。我不热衷于使用 NLP,因为该项目位于小村庄,我可以从其他来源获得其名称。
我正在考虑将文本拆分为空格,并尝试使用 Python 词汇表查找匹配项,其中值是村庄的名称,键是村庄的名称拆分空格。
例子:
“Project X 已在荷兰海牙建成”。 会给我:“海牙”
【问题讨论】:
【参考方案1】:我建议使用 NLP :-) 或至少一些与 NLP 相关的算法。 在这里您可以找到拥有超过 500 名公民的城市/城镇列表,以及有关 GPS 坐标、地区、国家和大陆的信息 http://www.geonames.org/ 或 http://download.geonames.org/export/dump/readme.txt 我将使用这些数据使用https://pypi.org/project/pyahocorasick/ 算法构建非常轻量级的名称实体识别。 之后,您可以拥有一个漂亮而整洁的“树”/村庄 - 小区域 - 较大区域 - 国家 - 大陆的层次结构(如果我没记错的话,甚至可以使用 GPS 坐标)。
【讨论】:
【参考方案2】:试试https://geocode.xyz/textscan
https://geocode.xyz/?scantext=Project%20X%20has%20been%20built%20in%20The%20Hague,%20The%20Netherlands&geoit=XML
<geodata>
<match>
<location>The Hague,NL</location>
<latt>52.06805</latt>
<longt>4.29647</longt>
<confidence>0.2</confidence>
<MentionIndices>32</MentionIndices>
<matchtype>locality</matchtype>
</match>
</geodata>
【讨论】:
以上是关于文字地理定位的主要内容,如果未能解决你的问题,请参考以下文章