Frage

Ich bin mit http://maps.google.com/maps/geo ? Web-Service einige Adressen geocodiert.

Das Problem, das ich habe ist, dass eine vollständigere Adresse nicht notwendigerweise eine genauere geocode geben.

z vorbei in Llantysilio, Denbighshire, UK ist viel genauer als Llantysilio, Llangollen, Denbighshire, UK

Die Genauigkeit Attribut in der XML scheint nicht sehr hilfreich bei der Entscheidung, welche Adresse zu wählen.

Wie haben andere Menschen mit diesem Problem umgegangen? Gibt es einen guten Weg, um die beste geocode zu holen, das funktioniert am meisten / alle Zeit?

* edit Ein bisschen mehr info - wenn ich in der volleren Adresse stellte die erste Zeile der Adresse ignoriert und der Geocoder springt zu einem anderen, aber genau, Adresse, die eine zentrale Straße in der Extralinie ist zu der Adresse. In diesem Beispiel nimmt es Castle Street in der Mitte llangollen, scheinbar ohne Berücksichtigung Llantysilio.

Bearbeiten von kdgregory: hier sind die beiden API-Anfragen, die ich (fehlende API-Schlüssel scheint kein Problem zu sein) verwendet:

http://maps.google.com/maps/geo?q=Llantysilio,+Denbighshire,+UK&sensor=false&output=xml

http://maps.google.com/maps/geo?q=Llantysilio,Llangollen,++Denbighshire,+UK&sensor=false&output=xml
War es hilfreich?

Lösung 5

Am Ende habe ich festgestellt, dass es viel zu viele seltsame Blips in Adresse Konsistenz mit Google Geocoding Webservice in Großbritannien sind, schaffte es aber schließlich statt mit Postleitzahlen einen Weg, um herauszufinden, die viel genauer ist: , wie es gemacht

Andere Tipps

Sie haben die Richtigkeit meines Freundes zu interpretieren. Es gibt in der Regel zwei Teile mit einer Genauigkeit, zuerst die Adresse Macthing. Der zweite Teil ist der wichtige Teil. Sie können etwas auf eine Genauigkeit von den Vereinigten Staaten, oder Stadtebene, zipcode Schwerpunkt, Straße interpolierte Ebene oder ein tatsächliches Paketpräzisionsniveau geocodiert. Das erste Beispiel hat ein 4 und die zweite ist 9. Für diesen Service je höher desto besser.

Genauigkeit Wert Beschreibung 0 Unbekannt Genauigkeit. 1 Land genau zu erfassen. 2 Region (Staat, Provinz, Präfektur, etc.) genau zu erfassen. 3 Sub-Region (Kreis, Gemeinde, etc.) genau zu erfassen. 4 Stadt (Stadt, Dorf) genau zu erfassen. 5 Postleitzahl (PLZ) genau zu erfassen. 6 Straße genau zu erfassen. 7 Überschneidung Pegelgenauigkeit. 8 Adresse genau zu erfassen. 9 Premise (Gebäude Namen, Eigenschaftsnamen, ein Einkaufszentrum, etc.) genau zu erfassen.

Es ist wahrscheinlich gut zu beachten, dass Google nicht an der XAL specs , sondern setzt sie in einer Untergruppe.

Also, bedeutet dies, dass Sie nicht unbedingt in der Lage sein zu tun:

place.AddressDetails.Country.AdministrativeArea.Locality.LocalityName
place.AddressDetails.Country.AdministrativeArea.AdministrativeAreaName
place.AddressDetails.Country.CountryName

Da ein Land und Unter Ort zur Verfügung gestellt werden können, während ein Verwaltungsbereich nicht.

Die Daten, die zurückgegeben wird, wird mit einer Genauigkeit Messgerät identifiziert, die Sie eine relative Vorstellung davon, was gibt Ihnen für Daten erwarten. So können Sie Objekte speichern und Teile der vollständigen Adresse mit dieser Variable abhacken und versuchen, in einer solchen Art und Weise zu geocodieren - Es ist allerdings nicht zu empfehlen.

Typischerweise wird eine vollständige Adresse ist (ohne die Durchfahrt) ist ein guter Weg, um die allgemeine Lage zu finden. Sie können einen Teil der gewichtete Vorzugslogik verwenden Google die Adresse verfeinern bereitstellt.

z. Verwenden Sie den setViewPort oder SetCountryCode Ihrer Suche ein bisschen mehr Genauigkeit zu geben.

Denken Sie daran, Geocoding ist keine Wissenschaft . Sie können nicht konsistente Ergebnisse erwarten.

A geocode response.Placemark [0] über gmap können Sie überprüfen, was Sie haben, und nehmen Sie die Ebene oder versuchen Sie es erneut. Ich entschied mich für Standard in der Reihenfolge

place.AddressDetails.Country.AdministrativeArea.Locality.LocalityName
place.AddressDetails.Country.AdministrativeArea.AdministrativeAreaName
place.AddressDetails.Country.CountryName

Es könnte mehr logisch gesehen oben genannt. gmaps 3 funktioniert etwas unvereinbar mit v2.

Sie können einen sehr hässlichen Hack versuchen, die in der Geokodierung Ihre vollständige Adresse und alle Untergruppen der Worte Ihre Adresse enthält besteht, erhalten Sie eine Menge von Geokoordinaten, dass Sie die Adressen bekommen verwenden, um sie im Zusammenhang mit Reverse Geocoding-Tool. Sobald Sie genügend Adressen haben Sie sie mit der einen vergleichen Sie zuerst gab, dann nehmen Sie die genaueste geocode ... Viele Anfragen, viel Iteration wächst mit jedem Wort, das Sie Ihre Adresse hinzufügen, auch eine hässliche Arbeit, aber Spaß machen kann, um Statistiken zu machen ^^

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top