pygeocoder模块无法正常工作

时间:2014-03-06 20:23:32

标签: python gis geocoding

您好我正在尝试对德国公司地址进行地理编码。我的文件是一个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=&region=&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

1 个答案:

答案 0 :(得分:1)

你需要告诉pandas文件的编码:

df = pd.read_csv('geocodes.csv', encoding="iso-8859-1")