Skip to content

Instantly share code, notes, and snippets.

@nicolas17
Created February 8, 2016 22:49
Show Gist options
  • Save nicolas17/6d7761bf3eb8758627e9 to your computer and use it in GitHub Desktop.
Save nicolas17/6d7761bf3eb8758627e9 to your computer and use it in GitHub Desktop.
#!/usr/bin/python3
import requests
import re
import json
query = """
[out:json];
area
["name"="Posadas"]["is_in:country_code"="AR"][admin_level=8];
relation(area)[boundary=cadastral];
out;
"""
total_chacras=260
per_row=20
def extract_info(relation):
m = re.match(r'^Chacra (\d+)$', relation['tags']['name'])
num = int(m.group(1))
return {
'name': relation['tags']['name'],
'num_chacra': num,
'relation_id': relation['id']
}
if False:
sess = requests.session()
r = sess.post("http://overpass-api.de/api/interpreter", data=query)
with open("result.json", "wb") as f:
f.write(r.content)
result = r.json()
else:
result = json.load(open("result.json", "r"))
chacras = {c['num_chacra']: c for c in (extract_info(rel) for rel in result['elements'])}
for num in range(1, total_chacras+1):
if num % per_row == 1:
print('|- align=center style=";border:1;padding:0cm;"')
if num in chacras:
chacra = chacras[num]
print("| '''[http://www.openstreetmap.org/relation/{} {}]".format(chacra['relation_id'], num))
else:
print("""| align=center style="background-color:#434343;border:none;padding:0cm;" | '''{}'''""".format(num))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment