acurus / pnvdb Goto Github PK
View Code? Open in Web Editor NEWPython wrapper for the NVDB Rest API
Home Page: https://pnvdb.readthedocs.io
License: MIT License
Python wrapper for the NVDB Rest API
Home Page: https://pnvdb.readthedocs.io
License: MIT License
Det kan sees ut som API'et blir kallet mer enn nødvendig.
Bare returner data rått fra API'et så funker det.
Denne bør egenentlig og fungere for egenskaper og verdier. Lage en generisk funksjon som oversetter?
Liker ikke at logging spytter ut hele objektet. Det er ikke nødvendig. kanskje bare id og type eller noe.
Hele systemet rundt denne filen må skrives om.
Tror det er like greit å hente informasjonen ned første gang man trenger den i en instance av pnvdb.
Line 185 in 21a369c
Trenger den når man jobber med datafangst som vil ha geografiske koordinater.
Ellers får jeg ikke med vegsegmenter
Må legge det inn i requirements et sted. Tror det var i setup.py?
Problemer med skriverettigheter, og path.
Line 73 in util.py
with open("pnvdb/const.py", 'w') as f:
endres til
with open("../const.py", 'w') as f:
Angående rettigheter, må jeg google litt..
Denne er ikke i orden.
Exception has occurred: UnboundLocalError
local variable 'payload' referenced before assignment
File "O:\1\Res\16080 Geodata\Brukere\Jan Tore\05_Dev\00_python\vegref2utm\vegref2utm_new.py", line 5, in
print(nvdb.posisjon('0200EV18HP3M10120'))
Legg til "inkludergeometri=utledet" i kallet til objekter.
Les.hent() burde bruke "inkluder=alle"
if objekt_type(98).objekt_liste():
do_code
linje 52. Fjern denne, og vurder om det skal legges inn logging.
Om egengeometri ikke eksisterer i api-svaret vil denne funksjonen egengeometri i models/objekt.py feile.
Legge til rette for mulighet til å styre hva som blir hentet av objektene.
endre payload variable navn til noe mer beskrivende.
Tror jeg lager en funksjon per endepunkt som henter data.
Da slipper jeg så mye repeterende kode rundt dette.
Skulle gjerne hatt logging for hvor mange kall som blir gjort.
Legge det i _fetch_data på debug level for eksempel.
Kan være 0 som default verdi, men være tilgjengelig som parameter i hent-kallet.
Egenskapstype.verdi(egenskapstype=, verdi=) # id for begge deler.
Returnerer None om den har hentet andre egenskaper tidligere.
>>> import pnvdb
>>> nvdb = pnvdb.Nvdb()
>>> obj = nvdb.objekt_type(95)
>>> obj.barn # Feiler
>>> obj.metadata
>>> obj.barn # funker
obj = nvdb.objekt(67,86520350)
for i in obj.vegreferanser:
print(vegref.detaljert)
https://www.vegvesen.no/nvdb/api/v2/veg?vegreferanse=0300+Rv150+hp85+m12064-12178
Traceback (most recent call last):
File "<pyshell#10>", line 2, in <module>
print(i.detaljert)
File "C:\Python27\ArcGISx6410.4\lib\site-packages\pnvdb\les.py", line 326, in detaljert
self.data = self._fetch_data('veg', payload={'vegreferanse':self.vegreferanse})
File "C:\Python27\ArcGISx6410.4\lib\site-packages\pnvdb\les.py", line 18, in _fetch_data
data = self._check_response(resp, format)
File "C:\Python27\ArcGISx6410.4\lib\site-packages\pnvdb\les.py", line 32, in _check_response
raise ApiError(read_api_error(resp))
ApiError
indexfila på readthedocs er utdatert.
Når data er hentet, sjekk om data['metadata']['returnert'] == 0. Om det er det, return None
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.