lukeprior / nbn-upgrade-map Goto Github PK
View Code? Open in Web Editor NEWInteractive map showing premises eligible for the NBN FTTP upgrade program.
Home Page: https://lukeprior.github.io/nbn-upgrade-map/
License: MIT License
Interactive map showing premises eligible for the NBN FTTP upgrade program.
Home Page: https://lukeprior.github.io/nbn-upgrade-map/
License: MIT License
Butler โ 6036
Merriwa โ 6030
Clarkson โ 6030
Ridgewood โ 6030
Thanks for this resource!
Doolandella, Forest Lake, Inala, Heathwood
please and thanks
I received this message from a user
I noticed in some of the data that it appears to be losing the premises that have done the tech flip some time ago where nbn removes the altReasonCode from the json once the original FTTN is disconnected.
Perhaps if it is reasonCode: "FTTP_CT" and techFlip: true you could leave it in the extracted data set to fill in the missing dots? Perhaps a new category to distinguish upgraded from original FTTP?
e.g.
"id": "LOC000107398763",
"latitude": -33.43858117,
"longitude": 149.61829671,
"reasonCode": "FTTP_CT",
"changeoverDate": "15 July 2050",
"patChangeDate": "Apr 2022",
"patChangeStatus": true,
"techFlip": "Yes",Where its a recent switch and they still have an active parallel FTTN service connected, they do show up, I'm guessing because altReasonCode still exists?
e.g.
"id": "LOC000078509381",
"latitude": -33.43905317,
"longitude": 149.61801771,
"reasonCode": "FTTP_CT",
"altReasonCode": "FTTN_CT",
"changeoverDate": "15 July 2050",
"patChangeDate": "Apr 2022",
"patChangeStatus": true,
"techFlip": "Yes",
Mount Sheridan 4868
Edmonton 4869
White Rock 4868
Woree 4868
Earlville 4870
It would be nice if there was a TLDR on how to run it locally, and view the results.
Awesome tool.
Would be awesome if we could visualise the NSW postcodes 2444, 2445 and 2446.
Thanks!
Hey, the map is great. This is just a request for Helensburgh NSW to be added please :)
Sent from a user
historic NBN Technology WMS as a layer underneath the dots to be able to reference the ADA boundaries. Might make a bit more sense as to the patterns of which house have it and which don't...
Manually generated the map output for Somerville, VIC per #33
FWIW a bunch of addresses seem to be missing from the map (those on "Eramosa Road East" and "Eramosa Road West" for example). Possible mishandling of street_suffix in DB?
SELECT * FROM gnaf_202302.address_principals WHERE locality_name = 'SOMERVILLE' AND state = 'VIC' and address like '%ERAMOSA ROAD %' LIMIT 100000
And great job, thank you!
Hi, Great website! can you please add the suburbs above if possible? They have all been on various upgrade lists over the past 2 years.Thank you!
Any chance you could also add Bella Vista NSW 2153 and North Rocks NSW 2151 ??
Performance, debugging, adding features.
Can you please add Glenwood NSW 2768
Craiglie 4877 and Mossman 4873
Would be amazing if you could add 6BSD related suburbs
Ashfield, WA 6054
Bassendean, WA 6054
Beechboro, WA 6063
Bennett Springs, WA 6063
Eden Hill, WA 6054
Kiara, WA 6054
If I understand correctly, when iterating through the states+suburbs to find the next unprocessed state, the code checks if the state-name is in the list of previously processed results.
if target_suburb == "NA":
suburb_list = open("results/suburbs.json", "r")
suburb_list = json.load(suburb_list)
for state in suburb_list["states"]:
for suburb in suburb_list["states"][state]:
flag = False
for record in suburb_record["suburbs"]:
if record["internal"] == suburb: # <==== here
flag = True
break
However, there are duplicate state names:
{'ALBERT PARK': ['VIC', 'SA'],
'ANNANDALE': ['NSW', 'QLD'],
'BAYSWATER': ['VIC', 'WA'],
'BEACONSFIELD': ['NSW', 'VIC', 'QLD', 'WA'],
'BELMONT': ['NSW', 'VIC', 'WA'],
'CAMPERDOWN': ['NSW', 'VIC'],
'CLAREMONT': ['WA', 'TAS'],
'COOLANGATTA': ['NSW', 'QLD'],
'CROYDON PARK': ['NSW', 'SA'],
'EASTWOOD': ['NSW', 'VIC', 'SA'],
'ENFIELD': ['NSW', 'SA'],
'EVANDALE': ['SA', 'TAS'],
'GRANGE': ['QLD', 'SA'],
'HAMILTON': ['NSW', 'VIC'],
'HIGHGATE': ['SA', 'WA'],
'KELSO': ['NSW', 'QLD'],
'LAKELANDS': ['NSW', 'WA'],
'MAYLANDS': ['SA', 'WA'],
'MILTON': ['NSW', 'QLD'],
'MOUNT PLEASANT': ['NSW', 'QLD'],
'NEWPORT': ['VIC', 'QLD'],
'NEWTOWN': ['NSW', 'VIC', 'QLD'],
'PADDINGTON': ['NSW', 'QLD'],
'PERTH': ['WA', 'TAS'],
'SMITHFIELD': ['NSW', 'QLD', 'SA'],
'SORRENTO': ['VIC', 'WA'],
'ST PETERS': ['NSW', 'SA'],
'SURF BEACH': ['NSW', 'VIC'],
'THE GAP': ['QLD', 'NT'],
'TORQUAY': ['VIC', 'QLD'],
'WATERFORD': ['QLD', 'WA'],
'WATTLE GROVE': ['NSW', 'WA'],
'WHITE ROCK': ['NSW', 'QLD'],
'WOODCROFT': ['NSW', 'SA']}
if its not too much trouble to add these as well
Current code does
cur.execute(f"SELECT * FROM gnaf_202302.address_principals WHERE locality_name = '{target_suburb}' AND state = '{target_state}' LIMIT 100000")
On my machine this takes 10.4 seconds for a sample suburb (5957 rows). Fetching just the five fields we use takes 3.5 seconds.
query = f"""
SELECT address, locality_name, postcode, latitude, longitude
FROM gnaf_202302.address_principals
WHERE locality_name = '{target_suburb}' AND state = '{target_state}'
LIMIT 100000"""
cur.execute(query)
rows = cur.fetchall()
This is a really useful and awesome tool, thanks!
Is there any possibility of adding Maleny and North Maleny to the map (4552)?
This script takes a long time to run. It would be nice if it was capable of outputting some progress information, or details about what it's doing. Also, error messages if suburb/state were invalid or not found etc.
I think this might speed things up a little
https://requests.readthedocs.io/en/latest/user/advanced/#session-objects
Hi Luke,
Could you please add:
Beckenham
Bentley
Cannington
East Cannington
Karawara
Langford
Queens Park
St James
Thornlie
Waterford
Welshpool
Wilson
Thanks!
Are you able to add Ulverstone TAS 7315 & West Ulverstone TAS 7315 Along With Devonport TAS 7310?
Much appreciated!
Bathurst
West Bathurst
Windradyne
Mount Pleasant
Robin Hill
Kelso
Laffing Waters
Raglan
South Bathurst
Gormans Hill
Mount Panorama
Would be great to have this suburb added
Would be great to have both of these added. Thanks!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.