Office-Fragen.de
PQ Abfrage Geodaten - Druckversion

+- Office-Fragen.de (https://office-fragen.de)
+-- Forum: Microsoft Office (https://office-fragen.de/forum-1.html)
+--- Forum: Excel (https://office-fragen.de/forum-2.html)
+--- Thema: PQ Abfrage Geodaten (/thread-29321.html)

Seiten: 1 2


PQ Abfrage Geodaten - Luna-Maxx - 27.05.2026

Hallo Excelaner,
folgender Hintergrund. 
Ich betreibe schon lange Ahnenfroschung und nehme neben den Generalogie Programm auch Excel (2024 LTSC und O365) als Grundlage für Statikstiken und Auswertungen, welches mir die bekannten Programme nicht so liefern können, wie ich es gern hätte.

Erster Schritt zb. = Json.Document(Web.Contents("https://nominatim.openstreetmap.org/search?format=json&q=ORT%2C+LAND"))
Liefert mir hoffentlich nur einen Record (haut bei Rabat hin, weil einzig) .. 
Funktioniert bei Orten die mehrfach im Land vorkommen suboptimal .. abder damit kann ich noch leben ...

Problem zum hier bei Rabat ist aber:
= Json.Document(Web.Contents("https://nominatim.openstreetmap.org/search?format=json&q=Rabat%2C+Marokko"))

Liefert Rabat ⵔⴱⴰⵟ الرباط, باشوية الرباط, Préfecture de Rabat عمالة الرباط, Rabat-Salé-Kénitra ⵔⴱⴰⵟ-ⵙⵍⴰ-ⵇⵏⵉⵟⵔⴰ الرباط-سلا-القنيطرة, Maroc ⵍⵎⵖⵔⵉⴱ

die PQ Abfrage habe ich mit nem Kollegen dann konvertiert, gefiltert Transponiert und gestuft ..
Ergebnis dann für mich
Ort    Land    lat    lon

diese Geodaten werden dann woanders weioterverarbeitet

Ich bin neuling auf PQ ... gibt es andere Seiten die mir Diese Daten liefern können?

Gruß 
Lunamaxx
[Bild: Screenshot-2026-05-27-123051.jpg]


RE: PQ Abfrage Geodaten - HKindler - 27.05.2026

Hi,

was gefällt dir an deiner jetzigen Lösung nicht? Sie scheint doch zu funktionieren...
Oder andersrum gefragt: Welche anderen Daten soll eine andere Seite liefern?


RE: PQ Abfrage Geodaten - Luna-Maxx - 27.05.2026

Mich stören die arabischen Zeichen .. ich kriege sie da nicht weg, ohne dass ich die Abfrage zerstöre


RE: PQ Abfrage Geodaten - R J - 27.05.2026

Die arabischen Zeichen kannst Du z. Bsp. so entfernen lassen:


Code:
let
    Quelle = Json.Document(Web.Contents("https://nominatim.openstreetmap.org/search?format=json&q=Rabat%2C+Marokko")),
    //Quelle = Json.Document(Web.Contents("https://nominatim.openstreetmap.org/search?format=json&q=Dresden%2C+Deutschland")),
    Quelle1 = Quelle{0},
    ZuTabelle = Record.ToTable(Quelle1),
    Liste = Text.Split( ZuTabelle[Value]{12},","),
    LC = List.Count(Liste)-1,
    Kurz = Text.Trim(Liste{LC}),
    Land = try Text.Middle(Kurz, 0,Text.PositionOf( Kurz," ")) otherwise Kurz,
    Ort = try Text.Middle(Liste{0}, 0,Text.PositionOf( Liste{0}," ")) otherwise Liste{0},
    #"Transponierte Tabelle" = Table.Transpose(ZuTabelle),
    #"Höher gestufte Header" = Table.PromoteHeaders(#"Transponierte Tabelle", [PromoteAllScalars=true]),
    #"Andere entfernte Spalten" = Table.SelectColumns(#"Höher gestufte Header",{"lat", "lon"}),
    #"Hinzugefügte benutzerdefinierte Spalte" = Table.AddColumn(#"Andere entfernte Spalten", "Land", each Land),
    #"Hinzugefügte benutzerdefinierte Spalte1" = Table.AddColumn(#"Hinzugefügte benutzerdefinierte Spalte", "Ort", each Ort),
    #"Neu angeordnete Spalten" = Table.ReorderColumns(#"Hinzugefügte benutzerdefinierte Spalte1",{"Ort","Land",  "lat", "lon"})
in
    #"Neu angeordnete Spalten"



RE: PQ Abfrage Geodaten - Flotter Feger - 27.05.2026

Hallo Ralf,

kriegt sie nicht ... nimm mal die spanische Stadt 'El Toro' oder die ebenfalls spanische Stadt 'San Augustin'.


RE: PQ Abfrage Geodaten - R J - 27.05.2026

...ah... klar, wegen des Leerzeichens dazwischen... hatte ich nicht bedacht. Muss ich aber nicht nach Spanien deswegen, gibt ja auch hier Städtenamen mit Leerzeichen, wie, z. Bsp. Bad Homburg.... aber solange der TO sich nicht äußert, lass ich das erstmal so stehen...
Gibt's eigentlich auch Länder mit Leerzeichen? Die Deutsche Demokratische Republik gibt's jedenfalls schon mal nicht mehr...

Danke für den Hinweis!


RE: PQ Abfrage Geodaten - PetrolMaxxe - 27.05.2026

Hallo,

ich hoffe ich habe alle möglichen Zeichen eingekreist.

M-Code:
PHP-Code:
let
    Quelle 
Json.Document(Web.Contents("https://nominatim.openstreetmap.org/search?format=json&q=San Augustin%2C+Spanien")),
    Eintrag Quelle{0},
    ZuTabelle Record.ToTable(Eintrag),
    Adresse ZuTabelle[Value]{12},
    RemoveNonLatin = (txt as text) as text =>
        Text.Combine(
            List.Select(
                Text.ToList(txt),
                each
                    let c 
Character.ToNumber(_in
                        not 
(
                            (>= 1536 and <= 1791) or
                            (>= 1872 and <= 1919) or
                            (>= 2208 and <= 2303) or
                            (>= 64336 and <= 65023) or
                            (>= 65136 and <= 65279) or
                            (>= 11568 and <= 11647)
                        )
            )
        ),
    AdresseClean RemoveNonLatin(Adresse),
    Liste Text.Split(AdresseClean","),
    LC = List.Count(Liste) - 1,
    Land Liste{LC},
    Ort  Liste{0},
    Transp Table.Transpose(ZuTabelle),
    Header Table.PromoteHeaders(Transp, [PromoteAllScalars=true]),
    Keep Table.SelectColumns(Header, {"lat""lon"}),
    AddLand Table.AddColumn(Keep"Land"each Land),
    AddOrt Table.AddColumn(AddLand"Ort"each Ort),
    Ergebnis Table.ReorderColumns(AddOrt, {"Ort","Land","lat","lon"})
in
    Ergebnis 

Gruß Uwe


RE: PQ Abfrage Geodaten - R J - 27.05.2026

...im Prinzip sollen ja nur die deutschsprachigen Namen (also lateinische Buchstaben) aus den Listen extrahiert werden.
Z. Bsp. für die Stadt:
Rabat (lateinische Schrift)
ⵔⴱⴰⵟ (Tifinagh, Amazigh/Berberschrift)
الرباط (Arabisch)

Deshalb hab ich einen etwas anderen Weg versucht. Alle lateinischen Zeichen kann man ja über den ASCII Code ermitteln. Alles was darüber hinausgeht ist chinesisch, arabisch, kyrillisch oder, oder, oder...

PHP-Code:
let
    Quelle 
Json.Document(Web.Contents("https://nominatim.openstreetmap.org/search?format=json&q=Rabat%2C+Marokko")),
    // Quelle = Json.Document(Web.Contents("https://nominatim.openstreetmap.org/search?format=json&q=Bad Homburg%2C+Bundesrepublik Deutschland")),
    Quelle1 Quelle{0},
    ZuTabelle Record.ToTable(Quelle1),
    Liste Text.SplitZuTabelle[Value]{12},","),

    Stadtnamensliste Text.Split(Liste{0}," "),
    Landesnamensliste Text.Split(Text.Trim(Liste{List.Count(Liste)-1})," "),


    Stadt TC(Stadtnamensliste),
    Land TC(Landesnamensliste),
    
    
//Funktion zum Zusammensetzen der Namen mit Leerzeichen
    TC = (liste as list) as text =>
          let          
          
// Filter: erster Buchstabe < 255, also ASCII Code, der überwiegend Zeichen der deutscher Verwendung enthält
          Gefiltert = List.Select(
              liste,
              each Character.ToNumber(Text.At(_0)) < 255
          
),
          // Zu einem Text verknüpfen
          Ergebnis Text.Combine(Gefiltert" ")
        in
          Ergebnis
,

    #"Transponierte Tabelle" = Table.Transpose(ZuTabelle),
    #"Höher gestufte Header" = Table.PromoteHeaders(#"Transponierte Tabelle", [PromoteAllScalars=true]),
    #"Andere entfernte Spalten" = Table.SelectColumns(#"Höher gestufte Header",{"lat", "lon"}),
    #"Hinzugefügte benutzerdefinierte Spalte" = Table.AddColumn(#"Andere entfernte Spalten", "Land", each Land),
    #"Hinzugefügte benutzerdefinierte Spalte1" = Table.AddColumn(#"Hinzugefügte benutzerdefinierte Spalte", "Ort", each Stadt),
    #"Neu angeordnete Spalten" = Table.ReorderColumns(#"Hinzugefügte benutzerdefinierte Spalte1",{"Ort","Land",  "lat", "lon"})
in
    
#"Neu angeordnete Spalten" 

Das kann natürlich zu Problemen kommen, wenn in den Namenslisten auch andere europäische oder andere lateinisch geschriebene Namen als 2. oder andere Folgewerte vorkommen, aber davon gehe ich vorerst nicht aus


RE: PQ Abfrage Geodaten - Luna-Maxx - 28.05.2026

Guten Morgen in dier Runde,

ich werde die Vorschläge mal durchprobieren, kam gestern leider zu nichts mehr ...
nicht auszuschließen wäre es ja auch, zb. Dänische Städte-Namen mit Æ/æ, Ø/ø und Å/å. .. keine Ahnung was dann passiert ...

Es ist nicht kriegsentscheident, aber bisher kam wie gesagt nur Rabat vor, wo es mir und meinen "inneren Monk" stört, vielleicht kennt ihr das ja ..

Rückmeldung wird folgen
Gruß Armin


RE: PQ Abfrage Geodaten - Luna-Maxx - 28.05.2026

(27.05.2026, 17:29)R J schrieb: ...ah... klar, wegen des Leerzeichens dazwischen... hatte ich nicht bedacht. Muss ich aber nicht nach Spanien deswegen, gibt ja auch hier Städtenamen mit Leerzeichen, wie, z. Bsp. Bad Homburg.... aber solange der TO sich nicht äußert, lass ich das erstmal so stehen...
Gibt's eigentlich auch Länder mit Leerzeichen? Die Deutsche Demokratische Republik  gibt's jedenfalls schon mal nicht mehr...

Danke für den Hinweis!

Moin RJ ..
Zu Deiner Frage mit den Ländern und Leerzeichen .. ja gibt es

[*]Vereinigte Arabische Emirate
Antigua und Barbuda
Bosnien und Herzegowina
Dominikanische Republik
Kap Verde

Schlimmer noch
St. Vincent und die Grenadinen   (also Leerzeichen und Punkt)

Bindestrich-Variante 
Papua-Neuguinea