Community på Sveriges dataportal
Enkelt pythonskript för att hämta kulturhistoriska lämningar från Nationella geodataplattformen
-
Nedan visas ett enkelt pythonskript för att hämta kulturhistoriska lämningar i form av referensobjekt från Nationella geodataplattformen. Det sker inget urval utifrån attribut annat än typ. Limit-parametern begränsar hur många objekt som hämtas. Det går att maximalt hämta 10000 objekt åt gången.
Pythonskriptet hämtar en OAuth2-token från Lantmäteriets API genom att skicka en POST-förfrågan med dina konsumentnycklar. När token har hämtats, används den för att autentisera en annan POST-förfrågan till Lantmäteriets API för att hämta data om kulturhistoriska lämningar. Slutligen loggas den hämtade datan till konsolen.
# -*- coding: utf-8 -*-
import urllib.request, json, base64 token = json.loads(urllib.request.urlopen(urllib.request.Request( 'https://apimanager.lantmateriet.se/oauth2/token', data='grant_type=client_credentials'.encode('utf-8'), headers={'Authorization': 'Basic ' + base64.b64encode(b'consumerKey:consumerSecret').decode('utf-8'), 'Content-Type': 'application/x-www-form-urlencoded'} )).read().decode('utf-8')).get('access_token') response = json.loads(urllib.request.urlopen(urllib.request.Request( 'https://api.lantmateriet.se/distribution/geodatakatalog/sokning/v1/kulturhistorisklamning/v1/search', data=json.dumps({"query": {"feature.typ": {"eq": "kulturhistorisk lämning"}}, "limit": 10}).encode('utf-8'), headers={'Authorization': f'Bearer {token}', 'Content-Type': 'application/json'} )).read().decode('utf-8')) print(json.dumps(response, indent=2, ensure_ascii=False))
-
Vore det inte bra att lägga saker som detta i ett GITHUB repository för "Nationella geodataplattformen" .... Känns som saker i detta forumet flyttas och tas bort...
-
@Magnus-Sälgö
Bra synpunkt. Som jag nämnde i en annan tråd är detta en fråga som jag försöker att driva på Lantmäteriet. Det finns dock inget ställningstagande än – därför publicerar jag exempel som enskilda trådar just nu. -
Ok känns udda att det inte bara är att ladda upp....
Hur mår Lantmäteriet?
Tycker den video presentation video vid 5:54 man skapade om Öppna data som inte blev så öppna pga om jag fattar rätt data om vissa byggnader/ortofoto inte släpptes med motivering GDPR så skall byggnader/ortofoto behandlas som personuppgift känns extremt udda... tyvärr dock inte överraskande att saker inte släpps...
Fråga: Finns denna motivering någonstans i skriftlig form
-
@Magnus-Sälgö
Lantmäteriet mår bra! Dock inte så snabbfotad. Jag personligen skulle gärna se ett tydligt uppdrag för att sprida kod som offentlig sektor tar fram.Med anledning av din GDPR-kommentar så lät Lantmäteriet en extern aktör göra en utredning om ortofoto och byggnad. Utredningen pekade mot att dessa dataset kunde tolkas som personuppgifter. Utredningen går att begära ut och jag vet flera på LinkedIn som gjort det och sedan tillgängliggjort den genom sina kanaler.
-
Tackar skall kolla på det jag frågade ChatGPT får några veckor sedan om hen kunde förstå kopplingen Byggnad GDPR men den gick bet så där var Lantmäteriet vassare än dom tyngsta neurala nätverken
Jag personligen skulle gärna se ett tydligt uppdrag för att sprida kod som offentlig sektor tar fram.
Vore intressant vad kostnaden är att inte vara snabbfotad... och hur sårbara blir vi om amerikanerna tar bort sina molntjänster eller karttjänster som vi blivit så beroende av....
-
@Magnus-Sälgö
Då kan jag glänsa lite nu då. Det handlar i grund och botten om det UUID som finns knutet på alla byggnader. Samma UUID, för byggnad, går att härleda till en lagfaren ägare genom fastighetsregistret där UUID för byggnad finns registrerat på fastigheten. -
Då kan jag glänsa lite nu då. Det handlar i grund och botten om det UUID som finns knutet på alla byggnader.
Tackar men det borde kunna gå att anonymisera... eller !?!?!?
Mer funderingar var jag vill se LM och hur fel det blir när alla andra rör sig snabbare https://github.com/salgo60/Fredagsvandringen/issues/26
-
@Magnus-Sälgö
Det skulle såklart gå att göra. Sedan är det nog just kopplingen mellan objektet byggnad och fastighet som är en av styrkorna också. Så där måste en avvägning göras. Sedan kan ju användaren välja att anonymisera i nästa steg efter att ha hämtat informationen från Lantmäteriet. -
@lmdaniel sa i Enkelt pythonskript för att hämta kulturhistoriska lämningar från Nationella geodataplattformen:
Sedan är det nog just kopplingen mellan objektet byggnad och fastighet som är en av styrkorna också
inte för oss som vandrar
skämt o sido tror det finns hur många user cases som helst att ha bra strukturerad data... som jag visar i min länk så kör vi bara Google Map för dom har
- en koppling till kommunala transportmedel
- har Realtidsinfo när båtar, bussar, T-bana går men även ibland även andra transporttjänster ...
- har flerspråkighet....
- rankar restauranger mha av läsarna...
- låter restaurangägare uppdatera sina öppet tider...
- låter sina användare skriva och tycka till om maten...
- ger mig soim brukare ett enkelt sätt att kommunicera med dom som har stället vad man tyckte....
- jag som brukare kan skapa listor av saker jag gillar och rekommenderar och dela dessa
8-1) jag kan bjuda in andra att bidraga till listorna
Senaste vandringen fick mervärde pga koppling på Wikipedia
Exempel hur nya saker dyker upp och gör kartan mer intressant...
- fredagensvandring var 19 km flyby
- där ramlade vi in på Skolleden som en wikipedian hade skrivit en artikel om och även markerat på äldre kartor
-
Eller så kan man besöka Riksantikvarieämbetets öppna-data-portal
https://www.raa.se/hitta-information/oppna-data/oppna-data-portal/
Där erbjuds, utöver det API som Lantmäteriet råder över, flera genuint öppna format och tjänster för tillgång till registret över kulturhistoriska lämningar, precis som det ska vara med genuint öppna data.
Registret erbjuds för nedladdning, dels kommun- och länsvis paketerat, och dels för hela landet. Data är direkt användbara i det öppna formatet Geopackage. Det äldre formatet shapefil erbjuds i begränsad omfattning.
Exempelvis den här länken som hämtar Skånes lämningar: https://pub.raa.se/nedladdning/datauttag/lamningar/lan/lämningar_län_skåne.gpkg
Om man behöver ett stilsatt och klart kartskikt, med koppling till registrets information erbjuds öppna tjänster, både WMS och WFS för direkt användning i egna verktyg eller i en egen webkarta. Stilsättningen är den samma som i Fornsök, så det är lätt att känna igen data.
Här är WMS- och WFS-länkarna:https://pub.raa.se/visning/lamningar_v1/wms?service=wms&version=1.3.0&request=GetCapabilities https://inspire-raa.metria.se/geoserver/Kulturhistoriska_lamningar/wfs?request=getcapabilities&service=wfs
Alla dessa är fritt tillgängliga, utan några Pythonskript, registreringar eller inloggningar, och utan krav på applikationsutveckling eller egen stilsättning för att använda data.
Precis så som genuint öppna data ska vara. Och så som RAÄ i alla tider erbjudit sitt register. Att krångla in registret i NGP har inte tillfört någonting, och innebär i värsta fall en onödig dubbellagring av data. -
@Matself om du enbart fokuserar på geospatiala tillämpningar så fungerar ju de klassiska WFS-tjänsterna långt. Men om nya tillämpningsområden för datan ska kunna appliceras är den nya standarden OGC API Feature mer ändamålsenliga. Om vi för en sekund tänker bort Lantmäteriets val av autentisering och fokuserar på infrastrukturen så är jag övertygad om att den nya generationens apier, som både värdefulla data-/NGP-tjänsterna bygger på, kommer att vara vassare och mer användbara än de gamla GIS-fokuserade tjänsterna.
-
Det behöver inte vara antingen eller, upprepar jag med en papegojas envishet. Men det är naturligt att fokusera på geospatiala tillämpningar när vi diskuterar geodata. Mitt exempel visar att det går utmärkt väl att erbjuda systemberoende tillgång SAMTIDIGT som data erbjuds i öppna tjänster, i öppna format för direkt användning. Att Lantmäteriet ENBART fokuserar på data i programmeringsgränssnitt gynnar bara den redan etablerade geodatabranschen. Näringslivet, civilsamhället och medborgarna har ingen tillgång till äkta öppna data.
-
@lmdaniel @Matself vore trevligt om ni redovisade antal nedladdningar/sökningar som kan vara en indikation om det fungerar eller ej
Wikidata som har ett SPARQLfrågespråk är inte direkt enkelt för gemene man att konsumera men man kan enkelt se att det söks en hel del se tidigare forum inlägg
Artiklar på temat använda wikipedia/wikidata/wikicommons
- gammal artikel i Wired "Inside the Alexa-Friendly World of Wikidata, Virtual assistants do their jobs better thanks to Wikidata, which aims to (eventually) represent everything in the universe in a way computers can understand." om hur det används....
- AI behöver bra data "AI bots strain Wikimedia as bandwidth surges 50%"
-
@Matself, OGC API Feature är anpassat för geospatial användning och andra tillämpningsområden. Du får helt enkelt båda delarna. Det olyckliga i sammanhanget är att den nya standarden inte är implementerad fullt ut i de vanligaste applikationerna för användning. Och det är synd att Lantmäteriet är lite tidig på bollen där. Samt att Lantmäteriet till viss del avviker från standarden – men det hoppas jag innerligt ska rättas framgent. Det är bättre tillämpat för värdefulla data än för NGP. OGC API Feature är mer systemoberoende än vad WFS-standarden är/var.
Jag tycker inte att varje myndighet ska ha ett eget GUI för åtkomst av data. Jag skulle hellre se att alla myndigheter och andra offentliga aktörer hade standardiserade apier som gick att komma åt genom något generiskt GUI. Jag tycker att STAC-apierna ger en hint om hur det skulle kunna fungera genom att de kan nås genom exempelvis Radiant Earth STAC Browser. Här skulle jag vilja se en tydligare styrning från politiken. -
Självklart försvarar du din arbetsgivare. Jag är en oberoende användare som utan lojaliteter vill fokusera på mångfald och användbarhet. I det ligger att erbjuda data på olika sätt för olika behov, tillämpningar och för olika typer av användare med varierande kunskaper och förutsättningar.
Lantmäteriet har valt väg, och det är exklusiv maskinkommunikation, bakom inloggningar och registrerade användarkonton. Därigenom förstärker ni mystiken kring 'GIS' och geodata som något svårt och komplicerat att använda. Istället för att ta tillfället i akt att sprida geodata till nya användargrupper och nya användningsområden. -
Design mönster Single Source of Truth (SSOT)
@lmdaniel sa i Enkelt pythonskript för att hämta kulturhistoriska lämningar från Nationella geodataplattformen:
Jag tycker inte att varje myndighet ska ha ett eget GUI för åtkomst av data
Ett problem jag såg med Havsmyndighetenens badplats data som dom skickar in till EEA är dålig kvalitet på koordinater där ingen tar ansvar att rätta upp det dvs.
- Havsmyndigheten pekar på Kommunerna
- inga kommuner har jag sett städar sitt data
- exempel fel jag rapporterat till kommuner med dåliga koordinater detta var 2021 och mig veterligen var det ingen som rättade sitt data
SSOT
Lösningen på detta är Design mönster Single Source of Truth (SSOT) dvs. att det naturliga vore för badplatser att kommunerna inte har koordinater för badplatser utan hämtar det från Lantmäteriverket och gissar jag att Lantmäteriverket på samma sätt har koppling SSOT till andra myndigheter/källor i en perfekt världFråga @lmdaniel : Var befinner sig API design / tankar hur SSOT skall lösas?
Dagens "hobbyverkstad" att varje kommun tillfrågas var deras badplatser finns och sitter och hittar på egna koordinater har Havsmyndighetens databas / API visat inte fungerar....
Exempel issue #128 fel jag hitta maj 29, 2021 och uppfattar jag fortfarande känns fel
- badplatsen.havochvatten.se SE0611780000003824 - API badplatsen.havochvatten.se/badplatsen/api/testlocationprofile/SE0611780000003824 --> koordinat 59.3281469868576 13.8076945472095
Enligt Open Street Map så ligger den koordinaten uppe i skogen.... inte nere vid vattnet som en badplats brukar göra
- hur LM visar badplatsen på sin karta
-
@Matself, nej försvarar inte Lantmäteriet inte som min arbetsgivare utan för att jag på riktigt tycker att OGC API Feature känns riktigt riktigt bra. Det är enkelt att tolka och läsa informationen från apiet, både som människa och maskin. Och än en gång. OGC API Feature är inte en exklusiv maskinkommunikation. Det är fullt möjligt för dig som medmänniska att läsa och på egen hand tolka den data som apiet levereras. Men självklart måste du anropa, antingen med en url, eller skript, eller ett system av ditt val.
-
@Magnus-Sälgö, det där måste jag tänka till lite på innan jag svarar
-
@lmdaniel det är egentligen det självklara men känns inte som vi är där se "Design mönster Öppna data - Single Source of Truth (SSOT) / Semantisk interoperabilitet"
- Bolagsverket har skrivit en rapport som jag uppfattar är inom detta område som jag bara hittar på internet archive om "Wikipedia:The Once Only Principle" - Bolagsverket N2016/08060/FF "Uppdrag att medverka i EU:s pilotprojekt En uppgift en gång"
Ser inte att vi har bra mekanismer att ändringshantera/backlogs och att jobba ihop min issue #776"