Ik wil door middel van een Python script een selectie maken uit de BAG van de aanwezige panden in een specifiek gebied in Nederland. De output wil ik wegschrijven naar een geojson file die ik vervolgens weer kan inlezen in een geografisch informatie systeem. Bijvoorbeeld QGIS. Als ik onderstaande script uitvoer krijg ik netjes een respons. Alleen is dit geen output die ik kan inlezen als geojson bestand. Zo ontbreken FeatureCollection / Features. Wat doe ik verkeerd? Ik heb de api key even op xxx gezet. Maar deze is in mijn code correct ingevuld.
Code
import requests
import json
import geojson
from pprint import pprint
url = âhttps://bag.basisregistraties.overheid.nl/api/v1/pandenâ
payload = â{âgeometrieâ:{âwithinâ:{âtypeâ:âPolygonâ,âcoordinatesâ:[[[4.861791, 52.335380], [4.868483, 52.335407], [4.868955, 52.332312], [4.861083, 52.331984], [4.861791, 52.335380]]]}}}â
headers = {
âX-Api-Keyâ: âxxxxxâ,
âAcceptâ: âapplication/hal+jsonâ,
âAccept-Charsetâ: âUTF-8â,
âContent-Typeâ: âapplication/jsonâ,
âCache-Controlâ: âno-cacheâ,
âPostman-Tokenâ: â0b46b88b-e586-416e-8c1b-1bd8b1723cc7â
}
response = requests.request(âPOSTâ, url, data=payload, headers=headers)
data = response.json()
with open(âdata.jsonâ, âwâ) as f:
json.dump(data, f)
pprint(response.json())
Voorbeeld output
{â_embeddedâ: {âpandenâ: [{â_embeddedâ: {âgeldigVoorkomenâ: {â_embeddedâ: {âbronâ: {âdocumentdatumâ: â2014-03-28â,
âdocumentnummerâ: âGV00001867_AC00ACâ}},
âaanduidingCorrectieâ: 0,
âaanduidingInactiefâ: False,
âbeginGeldigheidâ: â2014-03-28T00:00:00.000+01:00â,
âeindGeldigheidâ: None,
âgeconstateerdâ: False,
âinOnderzoekâ: False,
âlabelâ: âVoorkomen â
âPand â
â0363100012184477 â
âvan â
â2014-03-28â},
âgeometrieâ: {âcoordinatesâ: [[[4.8614975,
52.3339057],
[4.8614994,
52.3339058],
[4.8615012,
52.333906],
[4.861503,
52.3339064],
[4.8615046,
52.3339069],
[4.8615062,
52.3339075],
[4.8615076,
52.3339082],
[4.8615089,
52.333909],
[4.8615099,
52.33391],
[4.8615108,
52.333911],
[4.8615115,
52.333912],
[4.8615119,
52.3339131],
[4.8615121,
52.3339142],
[4.8615121,
52.3339154],
[4.8615119,
52.3339165],
[4.8615114,
52.3339176],
[4.8615107,
52.3339186],
[4.8615098,
52.3339196],
[4.8615087,
52.3339205],
[4.8615074,
52.3339214],
[4.861506,
52.3339221],
[4.8615044,
52.3339227],
[4.8615028,
52.3339231],
[4.861501,
52.3339235],
[4.8614992,
52.3339237],
[4.8614973,
52.3339238],
[4.8614955,
52.3339237],
[4.8614937,
52.3339235],
[4.8614919,
52.3339231],
[4.8614903,
52.3339226],
[4.8614887,
52.333922],
[4.8614873,
52.3339213],
[4.861486,
52.3339204],
[4.861485,
52.3339195],
[4.8614841,
52.3339185],
[4.8614834,
52.3339175],
[4.861483,
52.3339164],
[4.8614827,
52.3339152],
[4.8614827,
52.3339141],
[4.861483,
52.333913],
[4.8614835,
52.3339119],
[4.8614842,
52.3339108],
[4.8614851,
52.3339098],
[4.8614862,
52.3339089],
[4.8614874,
52.3339081],
[4.8614889,
52.3339074],
[4.8614904,
52.3339068],
[4.8614921,
52.3339063],
[4.8614939,
52.333906],
[4.8614957,
52.3339058],
[4.8614975,
52.3339057]]],
âcrsâ: {âpropertiesâ: {ânameâ: âurn:ogc:def:crs:EPSG::4258â},
âtypeâ: ânameâ},
âtypeâ: âPolygonâ}},
â_linksâ: {âselfâ: {âhrefâ: âhttps://bag.basisregistraties.overheid.nl/api/v1/panden/0363100012184477?geldigOp=2018-09-08â},
âverblijfsobjectenâ: {âhrefâ: âhttps://bag.basisregistraties.overheid.nl/api/v1/verblijfsobjecten?pandrelatering=0363100012184477&geldigOp=2018-09-08â},
âvoorkomensâ: {âhrefâ: âhttps://bag.basisregistraties.overheid.nl/api/v1/panden/0363100012184477/voorkomens?geldigOp=2018-09-08â}},
âidentificatiecodeâ: â0363100012184477â,
âoorspronkelijkBouwjaarâ: 2008,
âstatusâ: âNietGerealiseerdPandâ},
{â_embeddedâ: {âgeldigVoorkomenâ: {â_embeddedâ: {âbronâ: {âdocumentdatumâ: â2014-03-28â,
âdocumentnummerâ: âGV00001867_AC00ACâ}},
âaanduidingCorrectieâ: 0,
âaanduidingInactiefâ: False,
âbeginGeldigheidâ: â2014-03-28T00:00:00.000+01:00â,
âeindGeldigheidâ: None,
âgeconstateerdâ: False,
âinOnderzoekâ: False,
âlabelâ: 'Voorkomen â
'Pand â
'0363100012184476 â
'van â
â2014-03-28â},