forked from dewi-alliance/hplans
-
Notifications
You must be signed in to change notification settings - Fork 0
/
getgeojson.py
45 lines (35 loc) · 1.03 KB
/
getgeojson.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import csv
import requests
import gzip
#openstreetmaps api key
apikey='ec9fd47f34ab5e38b32d6ce100815d84'
osmids={}
with open('regions.csv', newline='') as f:
reader = csv.reader(f)
regions = list(reader)
f.close()
regions=regions[1:]
#print(regions)
for region in regions:
code,lat,lng,country,region,region2,region3,zone,osmindex,notes=region
try:
if osmindex=='':
continue
else:
osmids[region]=osmids[region]+osmindex+','
except KeyError:
print('Adding Key', region)
osmids[region]=osmindex+','
#print(osmids)
for region in osmids:
url = "https://osm-boundaries.com/Download/Submit?apiKey="+apikey+"&db=osm20210104&osmIds="+osmids[region]
print(url)
data=requests.get(url=url)
# save the gzip to disk
open(region+'.geojson.gz', 'wb').write(data.content)
# open it and unzip it
f=gzip.open(region+'.geojson.gz','rb')
file_content=f.read()
f.close()
# write it back to disk
open(region+'.geojson', 'wb').write(file_content)