Ошибка тайм-аута при пакетном геокодировании с API Google Maps в Python - PullRequest
0 голосов
/ 05 мая 2019

Я новичок в API Карт Google и не уверен, почему этот код не работает. У меня есть список из 80 ориентиров в CSV-файле, в который я пытаюсь получить координаты lon и lat.

Я полагаю, что что-то не так с тем, как я подключаюсь к API. Насколько я понимаю, у меня должно быть 2500 бесплатных запросов в день, но я получаю сообщение об ошибке тайм-аута, которое заставляет меня думать, что я уже достиг своего предела.

Вот снимок моей приборной панели enter image description here

Код:

import pandas as  pd
import googlemaps

# IMPORT DATASET
df = pd.read_csv('landmarks.csv')

# GOOGLE MAPS API KEY
gmaps_key = googlemaps.Client(key = 'MY KEY')

df['LAT'] = None
df['LON'] = None

for i in range (0, len(df), 1):
    geocode_result = gmaps_key.geocode(df.iat[i,0])
    try:
        lat = geocode_result[0]['geometry']['location']['lat']
        lon = geocode_result[0]['geometry']['location']['lon']
        df.iat[i, df.comlumns.get_loc('LAT')] = lat
        df.iat[i, df.comlumns.get_loc('LON')] = lon
    except:
        lat = None
        lon  = None

print(df)

Сообщение об ошибке:

Traceback (последний вызов был последним): File "C: \ Users \ JGrov \ Anaconda3 \ Lib \ сайта-пакеты \ GoogleMaps \ client.py", строка 253, в _request result = self._get_body (response) Файл "C: \ Users \ JGrov \ Anaconda3 \ lib \ site-packages \ googlemaps \ client.py", строка 276, в _get_body поднять googlemaps.exceptions._RetriableRequest () googlemaps.exceptions._RetriableRequest

Во время обработки вышеуказанного исключения произошло другое исключение:

Traceback (последний вызов был последним): Файл "c: / Users / JGrov / Google Диск / pythonProjects / Megalith Map / googleMapsAPI_Batch_Megaliths.py ", строка 16, в geocode_result = gmaps_key.geocode (df.iat [i, 0]) Файл "C: \ Users \ JGrov \ Anaconda3 \ lib \ site-packages \ googlemaps \ client.py", строка 356, в обертке result = func (* args, ** kwargs) Файл "C: \ Users \ JGrov \ Anaconda3 \ lib \ site-packages \ googlemaps \ geocoding.py", строка 68, в геокоде return client._request ("/ maps / api / geocode / json", params) ["results"] Файл "C: \ Users \ JGrov \ Anaconda3 \ Lib \ сайта-пакеты \ GoogleMaps \ client.py", строка 260, по запросу extract_body, reports_kwargs, post_json) Файл "C: \ Users \ JGrov \ Anaconda3 \ lib \ site-packages \ googlemaps \ client.py", строка 260, по запросу extract_body, reports_kwargs, post_json) Файл "C: \ Users \ JGrov \ Anaconda3 \ lib \ site-packages \ googlemaps \ client.py", строка 260, по запросу extract_body, reports_kwargs, post_json) [Предыдущая строка повторена еще 9 раз] Файл "C: \ Users \ JGrov \ Anaconda3 \ Lib \ сайта-пакеты \ GoogleMaps \ client.py", строка 203, в _request поднять googlemaps.exceptions.Timeout () googlemaps.exceptions.Timeout

Буду признателен за любую помощь в этом вопросе. Спасибо.

...