East gippsland #151

Merged
hughrun merged 2 commits from east-gip into main 2022-10-09 14:50:15 +11:00
2 changed files with 0 additions and 66 deletions
Showing only changes of commit 57a1a0c7df - Show all commits

View file

@ -1,30 +0,0 @@
#!/usr/bin/env python3
import csv
import json
# files to merge
csv_file = './website/data/library_services_information.csv'
topojson_file = './website/data/boundaries.topo.json'
geo = open(topojson_file, 'r') # open the topo.json file
json_data = json.loads(geo.read()) # read the file and load into a dict
# for each feature, if the name in the json matches the name in the csv, add new properties to the json
for feature in json_data['objects']['boundaries.geo']['geometries']:
with open(csv_file, newline='') as f:
# use DictReader so we can use the header names
reader = csv.DictReader(f)
for row in reader:
# look for match
if row['name'] == feature['properties']['name']:
# create new properties in topojson
for k in row:
if k != "long_name" and k != "": # ignore long_name and any blank column names
feature['properties'][k] = row[k]
f.close() # close csv
geo.close() # close geo and flush
# open topojson file again and overwrite it
with open(topojson_file, 'w') as newfile:
json.dump(json_data, newfile, separators=(',', ':'))
newfile.close()

View file

@ -1,36 +0,0 @@
name: topo update (push)
on:
push:
branches:
- master
- main
paths:
- 'website/data/library_services_information.csv'
workflow_dispatch:
jobs:
auto-topo-updater:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
ref: ${{ github.head_ref }}
fetch-depth: 0
- name: Merge CSV to TopoJSON
run: |
python3 ./.github/scripts/merge_csv_to_topojson.py
- name: Update contributors
run: |
npm install cheerio
npm install pretty
node ./.github/scripts/contributors.js
- uses: stefanzweifel/git-auto-commit-action@v4
with:
commit_message: merge csv data to topo
commit_author: Library Map Bot <librarymap@hugh.run>