Initial commit - buildings download completed
This commit is contained in:
commit
e2486df680
1 changed files with 51 additions and 0 deletions
51
main.py
Normal file
51
main.py
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
import os
|
||||||
|
import csv
|
||||||
|
import pickle
|
||||||
|
from pprint import pprint
|
||||||
|
|
||||||
|
try:
|
||||||
|
from wget import download
|
||||||
|
except ImportError as e:
|
||||||
|
print('Error: Please install wget using "pip install wget"')
|
||||||
|
exit(1)
|
||||||
|
|
||||||
|
def download_and_process(buildings_file_name, debug=False):
|
||||||
|
|
||||||
|
if 'data' not in os.listdir():
|
||||||
|
os.mkdir('data')
|
||||||
|
os.chdir('data')
|
||||||
|
if debug:
|
||||||
|
print(os.listdir())
|
||||||
|
|
||||||
|
# Buildings download
|
||||||
|
if f'{buildings_file_name[:-4]}.pickle' in os.listdir():
|
||||||
|
pickle.load(open(f'{buildings_file_name[:-4]}.pickle', 'rb'))
|
||||||
|
elif buildings_file_name not in os.listdir():
|
||||||
|
if debug:
|
||||||
|
print('Downloading building info...')
|
||||||
|
download(
|
||||||
|
'https://docs.google.com/spreadsheets/d/16J269YAFTVy_IPuzGUXfV_4-Rplzk1LVk7YpsvDcEVY/export?format=tsv',
|
||||||
|
buildings_file_name)
|
||||||
|
if debug:
|
||||||
|
print('Building info downloaded')
|
||||||
|
else:
|
||||||
|
print('Building info already downloaded, but not pickled')
|
||||||
|
|
||||||
|
# Buildings tsv processing
|
||||||
|
with open(buildings_file_name) as file:
|
||||||
|
reader = csv.reader(file, delimiter='\t') # Changes delimiter to tab for .tsv files
|
||||||
|
buildings = {}
|
||||||
|
for row in reader:
|
||||||
|
temp = list(row)
|
||||||
|
buildings[temp[0].lower()] = [row[i].lower() for i in range(1, len(row))]
|
||||||
|
pickle.dump(buildings, open(f'{buildings_file_name[:-4]}.pickle', 'wb'))
|
||||||
|
|
||||||
|
return buildings
|
||||||
|
|
||||||
|
os.chdir('..')
|
||||||
|
|
||||||
|
|
||||||
|
print('Downloading and processing buildings...')
|
||||||
|
buildings = download_and_process('buildings.tsv')
|
||||||
|
print('Buildings downloaded and processed')
|
||||||
|
print()
|
Loading…
Reference in a new issue