我正在尝试运行python的地理https://pypi.python.org/pypi/geograpy。
我使用
安装了地理位置pip install geograpy
和
python setup.py install
我还确保所有nltk都安装正确。 我安装了地理学使用的任何依赖项。 我对extract.py进行了以下更改
if (ne.node == 'GPE' or ne.node == 'PERSON') and ne[0][1] == 'NNP':
to
if (ne.label() == 'GPE' or ne.label() == 'PERSON') and ne[0][1] == 'NNP':
我正在运行的演示代码是
import geograpy
url = 'http://www.gutenberg.ca/ebooks/doyleac-casebookofsherlockholmes/doyleac-casebookofsherlockholmes-00-h.html'
places = geograpy.get_place_context(url=url)
print places.country_mentions
print places.region_mentions
print places.city_mentions
但是,我收到此错误
if (ne.label() == 'GPE' or ne.label() == 'PERSON') and ne[0][1] == 'NNP':
AttributeError: 'Tree' object has no attribute 'label'
如果我将extract.py改回
if (ne.node == 'GPE' or ne.node == 'PERSON') and ne[0][1] == 'NNP':
我收到此错误:
File "C:\Program Files (x86)\Python27\lib\site-packages\geograpy-0.3.7-py2.7.egg\geograpy\places.py", line 174, in set_cities
self.country_cities[country.name] = []
AttributeError: 'NoneType' object has no attribute 'name'
我还要提到我使用的是NLTK 3,但地理位置将其降级为NLTK2.0.5。
有人PLEASEEEEEEE帮忙!致谢
答案 0 :(得分:4)
我遇到了同样的问题。它只需要在位于的palces.py文件中更改正确的变量名称 C:\用户\奈马\应用程序数据\漫游\ Python的\ Python27 \站点包\ geograpy \ places.py 转到places.py文件中的第174行,并将country.name替换为country_name,如下所示:
self.country_cities[country_name] = []
希望这有效!