Ok, ich habe es geschafft, über Python aus den mit entsprechend ausgefüllten Exif-Tags versehenen Fotos die Geo-Koordinaten auszulesen und über das Python-Modul urllib mit den Funktionen urlopen bzw. urlretrieve den von GeoNames angebotenen Webservice "Extended Find nearby toponym / reverse geocoding" zu nutzen und Angaben zu Land- und Städte-Namen in Form einer xml-Datei in mein Programm zu laden. Die Anfragen an den WebService werden dabei in folgender Form gestellt:
http://ws.geonames.org/extendedFindNearby?lat=53.33&lng=9.58
Leider bekomme ich für die gleichen Geo-Koordinaten, mit denen ich bei Google Maps oder OpenStreetMap exakte Positionen bekomme, bei diesem Dienst sehr ungenaue Ergebnisse.
Beispiel:
in den Exif-Headern einer meiner Dateien sind folgende Werte gespeichert:
Longitude: 53°, 33' 46"
Latitude: 9°, 58' 42"
Das ist mitten in Planten und Blomen in Hamburg.
Der Webservice von GeoNames gibt mir als Ortsnamen aber Kallmoor in Niedersachsen an, das ist über 40 km von Hamburg entfernt. (siehe Link oben)
Woran kann das liegen? Sind die Angaben ohne Sekunden zu ungenau? Bei Wikipedia steht, dass eine Sekunde in Deutschland nur ca. 20 Metern entspricht. Das heißt, die Koordinaten dürften höchstens ca. 800-900 Meter in beide Richtungen falsch liegen.
Bin etwas ratlos, was mache ich falsch?