Existe-t-il une bibliothèque (ou mieux encore, un service Web) disponible pour convertir une latitude / longitude en un fuseau horaire?
J’ai regardé assez profondément cette question pour un projet sur lequel je travaille. GeoNames.org et EarthTools.com sont deux bonnes options pour de nombreuses situations, mais avec les graves défauts suivants:
Ces défauts signifiaient que ces outils existants ne convenaient pas à mes besoins, alors j’ai lancé ma propre solution et je l’ai publiée pour un usage général. Vous pouvez le trouver ici:
AskGeo est basé sur une carte de fuseau horaire du monde, il renvoie donc un fuseau horaire valide pour chaque latitude et longitude valide. Il renvoie l’ID de fuseau horaire standard (par exemple, “America / Los_Angeles”) utilisé sur Linux et la plupart des autres systèmes d’exploitation et structures de programmation. Il renvoie également le décalage actuel, en tenant compte de l’heure d’été.
Il est extrêmement facile à utiliser et son utilisation est documentée sur la page principale du site. L’API prend en charge les requêtes par lots, donc si vous avez besoin de faire beaucoup de recherches, veuillez utiliser l’interface par lot plutôt que d’imbriquer nos serveurs avec des requêtes en série. Les requêtes en vrac sont également beaucoup plus rapides, donc tout le monde gagne.
Lorsque nous l’avons lancé pour la première fois, nous l’avons construit sur Google App Engine (GAE) et l’avons rendu gratuit à tous les utilisateurs. Cela était possible parce que les prix de GAE étaient si bas à ce moment-là. Depuis lors, la charge de nos serveurs a considérablement augmenté et les prix de GAE ont augmenté. Les deux facteurs combinés nous ont amenés à passer à Amazon Web Services pour l’hébergement et à commencer à facturer pour un usage commercial, tout en gardant le service gratuit pour les projets open source non commerciaux à but non lucratif et les chercheurs. Pour les utilisateurs commerciaux, nous fournissons 1000 requêtes gratuites pour permettre aux clients potentiels d’évaluer l’API afin de s’assurer qu’elle répond à leurs besoins. Voir le site Web pour les prix et les conditions.
La bibliothèque sous-jacente a été écrite en Java et, à la demande générale, nous avons également publié la bibliothèque sous licence commerciale. La documentation complète de la bibliothèque et les détails de prix sont sur le site Web.
J’espère que c’est utile. C’était certainement utile pour le projet sur lequel je travaillais.
Jetez un oeil à Geonames.org
C’est un webservice gratuit qui vous permet d’obtenir beaucoup d’informations à partir d’un long
Ils fournissent également une bibliothèque Java Client for GeoNames Webservices gratuite (et open source) (bibliothèque pour autre langage également fournie: ruby, python, perl, lisp …)
Voici quelques informations que vous pouvez obtenir de long / lat: (liste complète des services Web ici)
Les fuseaux horaires sont désormais disponibles via Google API
L’API Yahoo places fournit des informations de fuseau horaire par géolocalisation inversée.
Vérifiez-le.
http://developer.yahoo.com/geo/placefinder/guide/requests.html
De combien de précision avez-vous besoin? Diviser la longitude par 15 serait presque exact: p
Celles-ci semblent très prometteuses-
Eric Muller a créé des cartes de fichiers de formes pour les fuseaux horaires de la firebase database tz (Olson). Quelques petites mises en garde, cependant:
En dehors de cela, cependant, il semble être très précis dans la plupart des cas.
Le moteur DRT prend une latitude, une longitude et une date / heure locale et renvoie un décalage de fuseau horaire. Cela peut être utilisé pour établir le fuseau horaire d’un emplacement particulier à une date ultérieure .