Benutzer-Werkzeuge

Webseiten-Werkzeuge


nominatim

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
nominatim [2026/04/04 11:21]
admin [Reverse]
nominatim [2026/04/04 11:24] (aktuell)
admin [Search]
Zeile 22: Zeile 22:
 import requests import requests
  
-url = "https://nominatim.openstreetmap.org/search" +def search_place(query: str, limit: int = 1) -> list[dict]: 
-params = { +    url = "https://nominatim.openstreetmap.org/search" 
-    "q": "Stephansplatz, Wien"+    params = { 
-    "format": "jsonv2", +        "q": query
-    "limit": 1 +        "format": "jsonv2", 
-+        "limit": limit 
-headers = { +    
-    "User-Agent": "mein-technik-wiki-beispiel/1.0" +    headers = { 
-}+        "User-Agent": "mein-technik-wiki-beispiel/1.0 (kontakt@example.org)
 +    }
  
-response = requests.get(url, params=params, headers=headers, timeout=10) +    response = requests.get(url, params=params, headers=headers, timeout=10) 
-response.raise_for_status()+    response.raise_for_status() 
 +    return response.json()
  
-data response.json() + 
-print(data)+results search_place("Stephansplatz, Wien"
 + 
 +for place in results: 
 +    print(place["display_name"]
 +    print(place["lat"], place["lon"])
 </code> </code>
 ====Reverse==== ====Reverse====
Zeile 49: Zeile 55:
 import requests import requests
  
-url = "https://nominatim.openstreetmap.org/reverse" +def reverse_geocode(lat: float, lon: float) -> dict: 
-params = { +    url = "https://nominatim.openstreetmap.org/reverse" 
-    "lat": 48.20849+    params = { 
-    "lon": 16.37208+        "lat": lat
-    "format": "jsonv2", +        "lon": lon
-    "addressdetails":+        "format": "jsonv2", 
-+        "addressdetails":
-headers = { +    
-    "User-Agent": "mein-dokuwiki/1.0" +    headers = { 
-}+        "User-Agent": "mein-dokuwiki/1.0" 
 +    }
  
-response = requests.get(url, params=params, headers=headers, timeout=10) +    response = requests.get(url, params=params, headers=headers, timeout=10) 
-response.raise_for_status()+    response.raise_for_status() 
 +    return response.json()
  
-data = response.json() 
  
-print("Angezeigter Name:", data.get("display_name")) +result = reverse_geocode(48.2084916.37208
-print("Breitengrad:"data.get("lat")+print(result["display_name"])
-print("Längengrad:", data.get("lon")) +
-print("Adresse:"+
-for key, value in data.get("address", {}).items(): +
-    print(f"  {key}: {value}")+
 </code> </code>
 ====Lookup==== ====Lookup====
nominatim.1775294508.txt.gz · Zuletzt geändert: 2026/04/04 11:21 von admin