2015-05-08 1 views
2

На геоданные docs Я пытаюсь геокодировать список строк, но я получаю сообщение об ошибке.Ошибка геокодирования с геоданными и геофизикой

Мой окр

import geopandas as gdp 
from geopandas.geocode import geocode 
import geopy 
import sys 

print(sys.version) 
print (gdp.__version__) 
print (geopy.__version__) 

3.4.3 |Anaconda 2.2.0 (x86_64)| (default, Mar 6 2015, 12:07:41) 
[GCC 4.2.1 (Apple Inc. build 5577)] 
0.1.1 
1.10.0 

Я пытаюсь сделать

geocode(['boston, ma', '1600 pennsylvania ave. washington, dc']) 

, и я получаю следующее сообщение об ошибке

AttributeError       Traceback (most recent call last) 
<ipython-input-77-d7e5e2fb2b1d> in <module>() 
----> 1 geocode(['boston, ma', '1600 pennsylvania ave. washington, dc']) 

/Users/tbmh1/anaconda/envs/devData34/lib/python3.4/site-packages/geopandas-0.1.1-py3.4.egg/geopandas/geocode.py in geocode(strings, provider, **kwargs) 
    70    'bing': geopy.geocoders.Bing, 
    71    'yahoo': Yahoo, 
---> 72    'mapquest': geopy.geocoders.MapQuest, 
    73    'openmapquest': geopy.geocoders.OpenMapQuest, 
    74    'nominatim' : geopy.geocoders.Nominatim} 

AttributeError: 'module' object has no attribute 'MapQuest' 

Я понятия не имею, почему он пытается сделать MapQuest, когда документы говорят, что googlev3 является поставщиком по умолчанию. Я получаю ту же ошибку с python 2.7

ответ

4

Не имеет значения MapQuest; геоданные не могут построить этот словарь, если только имя не существует. geopy удалена, что кодировщик в this commit:

MapQuest геокодер удален как API он использует теперь доступен только для корпоративных счетов. OpenMapQuest является заменой для данных, полученных из Nominatim.

В то же время, вы могли бы работать вокруг него, связывая имя чего-то еще, поэтому словарь работает по крайней мере:

>>> geopy.geocoders.MapQuest = None 
>>> geocode(['boston, ma', '1600 pennsylvania ave. washington, dc']) 
              address \ 
0         Boston, MA, USA 
1 1600 Pennsylvania Avenue Southeast, Washington... 

         geometry 
0 POINT (-71.0588801 42.3600825) 
1 POINT (-76.9816788 38.8786589) 
+0

Ааа, ок. Благодаря! –