无法使用geograpy(Python)从文本中提取城市名称

时间:2019-02-16 08:55:18

标签: python geography

我正在使用Python geograpy库从文本中提取城市名称 这是我的代码:-

import geograpy

text='I live in Kadawatha'

places = geograpy.get_place_context(text=text)

print(places.country_cities)

OUTPUT:- { }

当我从URL提取城市名称但从文本中提取城市名称时,这是不可能的,而且还有另一种方法可以通过使用geograpy.extraction来做到这一点,但这并不是提取所有可能的城市名称,因此我想使用上述方法来执行此操作。此外,还有另一个与此相关的问题(progress),但这也不起作用。

2 个答案:

答案 0 :(得分:1)

根据维基百科,卡达瓦莎被认为不是城市,而是郊区enter image description here。它不在geograpy支持的城市列表中。

作为geograpy3的提交者来重现您的问题,我在最新的geograpy3 https://www.wikidata.org/wiki/Q2041605中添加了一个测试:

其中:

def testStackOverflow54721435(self):
        '''
        see https://stackoverflow.com/questions/54721435/unable-to-extract-city-names-from-a-text-using-geograpypython
        '''
        text='I live in Kadawatha a suburb of Colombo  Sri Lanka'
        e=Extractor(text=text)
        e.find_entities()
        print(e.places)

返回:

['Kadawatha', 'Colombo Sri Lanka']

答案 1 :(得分:0)

为此,您需要安装geograpy-nltk