diff options
| author | Yuval Adam <yuv.adm@gmail.com> | 2013-02-17 19:52:31 +0100 |
|---|---|---|
| committer | Yuval Adam <yuv.adm@gmail.com> | 2013-02-17 19:52:31 +0100 |
| commit | 105dd7c7e6409ffc6148c284175117e7a4656dda (patch) | |
| tree | 2882bbee7e8c8adec55b15f84a77605fc614e6ff | |
| parent | 92300152db672dc74b9ea70b258d792e2e103f95 (diff) | |
Fetch ballots addresses script
| -rw-r--r-- | fetch_ballots.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/fetch_ballots.py b/fetch_ballots.py new file mode 100644 index 0000000..0c1ec76 --- /dev/null +++ b/fetch_ballots.py @@ -0,0 +1,27 @@ +import csv +import json +import requests + +from pprint import pprint + +def fetch_geocodes(cities): + d = {} + url = 'http://maps.googleapis.com/maps/api/geocode/json' + for city in cities: + print 'fetching ' + city + res = requests.get(url, params={ + 'address': city, + 'sensor': 'false' + }) + city = unicode(city.decode('utf8')).encode('utf8') + d[city] = json.loads(res.content, encoding='utf8') + return d + +with open('ballots.csv', 'r') as f: + c = csv.reader(f, delimiter=',', quotechar='"') + data = [x for x in c] + addresses = map(lambda x: '%s %s, %s' % (x[8], x[9], x[6]), data) + addresses = list(set(addresses)) + city_data = fetch_geocodes(addresses) + with open('ballots.json', 'w') as out: + json.dump(city_data, out, indent=4, ensure_ascii=False) |
