NEWS
[gelöst] Standort herausfiltern
-
Liebes Forum,
erneut muss ich um eure Hilfe bitten.
Ich möchte OpenCage nutzen, um den Standort einzelner Personen darzustellen. Die Abfrage der Daten ist erst einmal kein Problem aber ich bin nicht in der Lage, gewisse Daten aus den JSON Response herauszufiltern.
Könnt ihr mir bitte dabei helfen?Das JSON Response sieht so aus:
{ "documentation": "https://opencagedata.com/api", "licenses": [ { "name": "see attribution guide", "url": "https://opencagedata.com/credits" } ], "rate": { "limit": 2500, "remaining": 2483, "reset": 1670284800 }, "results": [ { "annotations": { "DMS": { "lat": "52° 23' 16.01880'' N", "lng": "9° 44' 0.38184'' E" }, "MGRS": "32UND4991404423", "Maidenhead": "JO42uj83ab", "Mercator": { "x": 1083521.518, "y": 6836676.75 }, "OSM": { "edit_url": "https://www.openstreetmap.org/edit?node=9041448608#map=16/52.38778/9.73344", "note_url": "https://www.openstreetmap.org/note/new#map=16/52.38778/9.73344&layers=N", "url": "https://www.openstreetmap.org/?mlat=52.38778&mlon=9.73344#map=16/52.38778/9.73344" }, "UN_M49": { "regions": { "DE": "276", "EUROPE": "150", "WESTERN_EUROPE": "155", "WORLD": "001" }, "statistical_groupings": [ "MEDC" ] }, "callingcode": 49, "currency": { "alternate_symbols": [ ], "decimal_mark": ",", "html_entity": "€", "iso_code": "EUR", "iso_numeric": "978", "name": "Euro", "smallest_denomination": 1, "subunit": "Cent", "subunit_to_unit": 100, "symbol": "€", "symbol_first": 0, "thousands_separator": "." }, "flag": "🇩🇪", "geohash": "u1qfj2zsvwd6ntczum3r", "qibla": 131.65, "roadinfo": { "drive_on": "right", "road": "Philipsbornstraße", "speed_in": "km/h" }, "sun": { "rise": { "apparent": 1670224440, "astronomical": 1670216940, "civil": 1670222040, "nautical": 1670219460 }, "set": { "apparent": 1670252940, "astronomical": 1670260440, "civil": 1670255340, "nautical": 1670257920 } }, "timezone": { "name": "Europe/Berlin", "now_in_dst": 0, "offset_sec": 3600, "offset_string": "+0100", "short_name": "CET" }, "what3words": { "words": "wiege.abbiegen.bauwerke" } }, "bounds": { "northeast": { "lat": 52.387833, "lng": 9.7334894 }, "southwest": { "lat": 52.387733, "lng": 9.7333894 } }, "components": { "ISO_3166-1_alpha-2": "DE", "ISO_3166-1_alpha-3": "DEU", "ISO_3166-2": [ "DE-NI" ], "_category": "building", "_type": "building", "city": "Hannover", "city_district": "Vahrenwald-List", "continent": "Europe", "country": "Deutschland", "country_code": "de", "county": "Region Hannover", "house_number": "2", "office": "Design Offices", "political_union": "European Union", "postcode": "30165", "road": "Philipsbornstraße", "state": "Niedersachsen", "state_code": "NI", "suburb": "Vahrenwald" }, "confidence": 10, "formatted": "Design Offices, Philipsbornstraße 2, 30165 Hannover, Deutschland", "geometry": { "lat": 52.387783, "lng": 9.7334394 } } ], "status": { "code": 200, "message": "OK" }, "stay_informed": { "blog": "https://blog.opencagedata.com", "twitter": "https://twitter.com/OpenCage" }, "thanks": "For using an OpenCage API", "timestamp": { "created_http": "Mon, 05 Dec 2022 08:09:25 GMT", "created_unix": 1670227765 }, "total_results": 1 }
Für mich wären alle Informationen aus dem Bereich "Components" interessant. Leider gelingt es mir nicht, die Daten einzeln aufzuschlüsseln.
-
@chrille1507 sagte in Standort herausfiltern:
Lage, gewisse Daten aus den JSON Response herauszufiltern.
warum nicht ?? was geht den nicht
-
@chrille1507 sagte in Standort herausfiltern:
Components
in javascript oder blockly??
was genau willst du damit machen? also wie willst du die daten aufbereiten - was genau suchst du daraus?{ "ISO_3166-1_alpha-2": "DE", "ISO_3166-1_alpha-3": "DEU", "ISO_3166-2": [ "DE-NI" ], "_category": "building", "_type": "building", "city": "Hannover", "city_district": "Vahrenwald-List", "continent": "Europe", "country": "Deutschland", "country_code": "de", "county": "Region Hannover", "house_number": "2", "office": "Design Offices", "political_union": "European Union", "postcode": "30165", "road": "xxxxxxx", "state": "Niedersachsen", "state_code": "NI", "suburb": "Vahrenwald" }
-
Ich habe es mit Blockly versucht aber bekomme immer "null" als Ergebnis.
Ich habe schon diverse Sachen im Bereich "Attribut" getestet aber leider immer das gleiche Ergebnis erhalten. -
das annotation gehört weg
-
@liv-in-sky Hallo,
ich benötige vor allem die Straße (road) und Hausnummer (house_number).
Damit wäre mir schon geholfen und falls ich mehr benötige, hoffe ich das Prinzip dahinter verstanden zu haben und den Rest alleine zu schaffen.
Zur zeit versuche ich mein Glück mit Blockly, würde tatsächlich es aber lieber in javascript haben wollen.
-
"results.components.house_number"
"results.components.road" -
und ändere in deinem obigen post den eintrag für deine adresse
im json - einfach im post die straße überschreiben
-
und die .0. nicht vergessen
-
let strasse = JSON.parse(json).results[0].components.road;
-
@homoran
Vielen Dank. Das ist die Lösung. Die 0 hat gefehltHerzlichen Dank an euch alle für die schnelle Hilfe!!!