[OSGeo-Discuss] Batch geocoding

Connors, Bernie (SNB) Bernie.Connors at snb.ca
Fri Feb 4 10:42:15 PST 2011

Try Google Fusion Tables.  All you have to do is put all of the address components in one field and it should be recognized and geocoded.

Bernie Connors, P.Eng
Service New Brunswick
(506) 444-2077
45°56'25.21"N, 66°38'53.65"W

From: discuss-bounces at lists.osgeo.org [mailto:discuss-bounces at lists.osgeo.org] On Behalf Of JP Glutting
Sent: Friday, 2011-02-04 09:34
To: discuss at lists.osgeo.org
Subject: [OSGeo-Discuss] Batch geocoding


I have a large set of addresses (around 150k) that I need to geocode for a study (my Masters thesis on heat-related mortality). I am looking into different solutions, but I can't find anything that seems like it would work properly.

I could script a solution using Google's map API, but there is a limit of 2,500 addreses per day (I can get around them with a little patience).

Right now the best solution I am looking at geopy for geocoding addresses (http://code.google.com/p/geopy/). It seems like a good system, I think I can use it to pull addresses out of my database and write back coordinates. There is one thing that I am not sure, about, though, is whether I am actually allowed to use the Google API without my use being liked to a specific web page. The terms of service and form for getting a Google API key require a URL linked to a Google account. In fact, it looks like the API can only be used through a web site:

"5.2 Account Key. After supplying Google with your account information and the URL of your Maps API Implementation, and accepting the Terms, you will be issued an alphanumeric key assigned to you by Google that is uniquely associated with your Google Account and the URL of your Maps API Implementation. Your Maps API Implementation must import the Google Maps APIs using this key as described in the Maps APIs Documentation<http://code.google.com/apis/maps/documentation/>, and Google will block requests with an invalid key or invalid URL. You may only obtain and use a key in accordance with these Terms and the Maps APIs Documentation<http://code.google.com/apis/maps/documentation/>."

So it looks like I can't even get it to work without a URL.

I can always write a script that loops through results extracted from the database, creates URLs and parses the XML results one at a time, but that seems like a fairly inelegant solution.

Does anyone have any good ideas about how to geocode a few thousand addresses?

Many thanks,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/discuss/attachments/20110204/242bdd56/attachment-0002.html>

More information about the Discuss mailing list