Skip to main content

En API wrapper omkring Danmarks Adressers Web API

Project description

PyDawa

En simple API wrapper omkring Danmarks Adressers Web API (DAWA).

Formålet med dette modul er at give nem adgang til DAWA i Python. Grunden til, at jeg begyndte at arbejde på dette modul er, at jeg havde skrevet et par scripts i python, der brugte API'et, men der var ingen "nem" adgang til det. Plus, jeg var nysgerrig over, om jeg kunne skrive et modul og uploade til pypi.

Det her projekt er et "work in progress", så jeg kommer til at tilføje funktionalitet, når jeg har brug for den. Jeg håber, at folk har lyst til at hjælpe med det.

Afhængigheder

  • Requests

Installation

Installer med pip:

$ pip install pydawa

Brug

Indtil videre, består modulet kun af tre classer:

  1. Adressesoeg
  2. Adresseopslag
  3. Adressevasker

Adressesoeg()

Søg efter en adresse med vejnavn, husnr og postnummer.

import pydawa

adresse = pydawa.Adressesoeg(vejnavn='Dronning Dagmars vej', husnr='200', postnr='3650')
response = adresse.info()

info() metoden henter data fra dawa api'et og returnerer en dictionary med respons.

Man kan også søge med en tekststring.

import pydawa

adresse = pydawa.Adressesoeg(q='Dronning Dagmars Vej 200, 3650 Ølstykke')
response = adresse.info()

Adresseopslag

Søg efter en adresse med adressens unikke id.

import pydawa

adresse = pydawa.Adresseopslag(id=id)
response = adresse.info()

info() metoden henter data fra dawa api'et og returnerer en dictionary med respons.

Adressevasker

Datavask af adressebetegnelse. Modtager en adressebetegnelse og returnerer en eller flere adresser, der bedst matcher.

import pydawa

adresse = pydawa.Adressevasker(betegnelse=adressebetegnelse)
response = adresse.info()

Koordinater for adresser

Man kan hente koordinater for en given adresse ved at bruge get_koordinater metoden fra adresse variablen i examplerne ovenfor.

import pydawa

adresse = pydawa.Adresseopslag(id=id)
response = adresse.info()

koordinater = adresse.get_koordinater(response[0])

Den metode tager et json object. Indtil videre se returner både Adressesoeg og Adresseopslag en liste, så derfor bruger man response[0] som input. Man kan kun hente koordinater fra Adressesoeg og _ Adresseopslag_, fordi Adressevasker returnerer ikke koordinater.

Reverse geokodning

Hvis man har koordinater og gerne vil finde den nærmeste adresse.

import pydawa

koordinater = (12.18, 55.78)

adresse = pydawa.Reverse(koordinater=koordinater)
response = adresse.info()

Geokoder

Hvis man har en csv eller xlsx fil, som indeholder adresser, som skal geokodes, så kan man bruge den her. Peg på filen og gem resultatet enten som en Pandas dataframe, hvis du skal bearbejde data mere, eller i en fil i samme mappe.

import pydawa

geokoder = pydawa.Geokoder('c:/users/brugernavn/adresser.csv')

# Gem data i en dataframe
df = geokoder.geokod_file(cols=['adresse', 'postnr', 'By'])

# Gem data i en fil
geokoder.geokod_file(save=True, cols=['adresse', 'postnr', 'By'])

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pydawa-0.5.1.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

pydawa-0.5.1-py3-none-any.whl (5.0 kB view details)

Uploaded Python 3

File details

Details for the file pydawa-0.5.1.tar.gz.

File metadata

  • Download URL: pydawa-0.5.1.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.3 CPython/3.8.1 Windows/10

File hashes

Hashes for pydawa-0.5.1.tar.gz
Algorithm Hash digest
SHA256 c8745d2cab2429b34adbe70fa84b8cf71eb3741a04b7fce9e8735cc917cc52af
MD5 c877629e5bb3c1b39d64fa3a34735cac
BLAKE2b-256 a0d5db2b257cf1278679f17e66d988ba9df8cf1cfe905932a2555db667fcbf93

See more details on using hashes here.

File details

Details for the file pydawa-0.5.1-py3-none-any.whl.

File metadata

  • Download URL: pydawa-0.5.1-py3-none-any.whl
  • Upload date:
  • Size: 5.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.3 CPython/3.8.1 Windows/10

File hashes

Hashes for pydawa-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e841f8b083f15152e03a0dee7c782b84de46d344b16dc4c3c0e3f3232b2bc353
MD5 9904acf36e4eaf8add01dce220e8f496
BLAKE2b-256 e536e1ff522f87f2dbb607e5a2924a741914ffaa7e3a1aa2fa21d14414f522ab

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page