python:使用多处理来对地址进行地理编码

时间:2016-05-04 13:26:58

标签: python multiprocessing geocoding

我必须对大量地址进行地理编码,因此我正在努力设置多处理。我看过parallel geocoding,但使用geopy解决了这个问题。不过,我将使用geocoder

import geocoder
import multiprocessing as mp

google_key = 'my_key'

addresses = ['tampa, florida', 'peroria, illinois', 'augusta, georgia',
             'hanover, new hampshire', 'burlington, vermont']

def geocode_worker(address):
    geocoder.google(address, key = google_key).latlng
    return address

if __name__ == '__main__':
    pool = mp.Pool(processes = (mp.cpu_count() - 1))
    result = pool.map(geocode_worker, addresses)

这将返回地址,因为我希望纬度和经度返回特定城市。我需要帮助让一切正常运转。

1 个答案:

答案 0 :(得分:1)

您的geocode_worker功能应该只是行号 return geocoder.google(address, key = google_key).latlng