您好,我正在尝试对德国公司地址进行地理编码。我的文件是一个 csv 文件,其中有 2 列,分别是我想要进行地理编码的地址和员工数量。当我使用 pandas 加载文件并打印地址时,即使它们有一些德语字符,它们也会正确显示(所以我认为这不是编码问题)。这是我的代码:
import csv
import pygeocoder
import pandas as pd
import codecs
import json
import urllib2
from pygeocoder import Geocoder
df = pd.read_csv('C:\Users\Jtrujillo\Desktop\germangeocodes (2).csv')
address = df.Address
print address
for a in address:
result = Geocoder.geocode(a)
我收到此错误:
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
File "F:\WinPython-64bit-2.7.6.3\python-2.7.6.amd64\lib\site-packages\pygeocoder.py", line 110, in geocode
return GeocoderResult(Geocoder.get_data(params=params))
File "F:\WinPython-64bit-2.7.6.3\python-2.7.6.amd64\lib\site-packages\pygeocoder.py", line 190, in get_data
raise GeocoderError(response_json['status'], response.url)
pygeolib.GeocoderError: Error INVALID_REQUEST
Query: https://maps.google.com/maps/api/geocode/json?language=®ion=&bounds=&components=&address=Marcel-Breuer-Str.+12%2C+M%FCnchen%2C+Bayern%2C+80807%2C+Germany&sensor=false
这是我正在使用的文件:https://www.dropbox.com/s/tynzlc9wp74zszr/germangeocodes%20%282%29.csv
最佳答案
您需要告诉 pandas 文件的编码:
df = pd.read_csv('geocodes.csv', encoding="iso-8859-1")
关于python - pygeocoder 模块不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22235131/