81 votes

Le fuseau horaire de recherche à partir de la latitude longitude

Est-il une bibliothèque (ou encore mieux, web service) disponible qui peut convertir à partir d'un de latitude et de longitude dans un fuseau horaire?

64voto

James D Points 1027

J'ai regardé assez profondément dans cette question, pour un projet que je suis en train de travailler sur. GeoNames.org et EarthTools.com sont deux bonnes options pour de nombreuses situations, mais à la suite de graves défauts:

  • GeoNames.org trouve la zone de temps en recherchant le point le plus proche de leur base de données qui contient un champ fuseau horaire. Cela conduit souvent à un mauvais résultat près des frontières. Il est aussi douloureusement lente, conduisant à des temps d'interrogation sur l'ordre de quelques secondes par la demande. Il n'a pas également le retour d'une période de validité de la zone si il n'y a aucun élément dans leur base de données à proximité du point de requête. GeoNames limite également le nombre de requêtes qui peuvent être effectuées par jour, de sorte que les opérations en bloc difficile.
  • EarthTools.org utilise une carte et est en mesure de revenir rapidement, des requêtes, mais il ne tient pas compte de l'heure d'été dans la plupart des endroits, et il retourne une première décalage plutôt que d'un moment ID de zone (c'est à dire, ils reviennent "GMT-7" au lieu de "America/Chicago"). Aussi, j'ai juste regardé leur page lors de la préparation de ce post et Google Chrome averti sur les logiciels malveillants sur leur site. Ce qui est nouveau pour moi et que ça peut changer, mais est évidemment une cause de préoccupation.

Ces défauts signifie que ces outils n'étaient pas adaptés à mes besoins, donc j'ai roulé ma propre solution et publiée pour une utilisation générale. Vous pouvez le trouver ici:

http://www.askgeo.com/

AskGeo est basé sur une carte des fuseaux horaires du monde, on en revient donc valide de fuseau horaire pour tous les valide la latitude et la longitude. Elle renvoie l'heure standard de l'ID de zone (par exemple, "America/Los_Angeles") utilisé sur Linux et la plupart des autres systèmes d'exploitation et des cadres de programmation. Il renvoie également le décalage actuel, en tenant pleinement compte de l'heure d'été.

Il est extrêmement facile à utiliser et l'utilisation est documentée sur la page principale du site. L'API prend en charge les requêtes lot, donc si vous avez besoin de faire beaucoup de look-ups, veuillez utiliser le lot de l'interface plutôt que de ralentir nos serveurs avec un numéro de série de demandes. La majorité des requêtes sont également beaucoup plus rapide, de sorte que tout le monde gagne.

Quand nous nous sommes lancés cela, nous l'avons construit sur Google App Engine (GAE) et de fait gratuitement pour tous les utilisateurs. Cela a été possible parce que GAE les prix étaient très bas à cette époque. Depuis lors, notre serveur de charge a augmenté considérablement et GAE de prix étaient à la hausse. Ces deux facteurs combinés nous a conduit à passer à Amazon Web Services pour l'hébergement et pour commencer à charger pour un usage commercial, tout en conservant le service gratuit pour non-lucratif, non-commerciale des projets open source, et des chercheurs. Pour les utilisateurs professionnels, nous fournissons gratuit de 1000 requêtes de laisser les clients potentiels à évaluer l'API pour s'assurer qu'il répond à leurs besoins. Voir le site web pour les tarifs et les conditions.

La bibliothèque sous-jacente a été écrit en Java et en raison de la demande populaire, nous avons également publié la bibliothèque, sous une licence commerciale. Documentation complète de la bibliothèque et de la tarification de détails sont sur le site web.

J'espère que cela est utile. Il a certainement été utile pour le projet sur lequel je travaillais.

28voto

Frederic Morin Points 1944

Jetez un oeil à Geonames.org

Il s'agit d'un service web qui vous permettent d'obtenir beaucoup d'informations à partir d'un long/lat

Ils fournissent également un gratuit (et open source) Client Java pour GeoNames des Services de la bibliothèque (la bibliothèque pour d'autres langues sont également fournis: ruby, python, perl, lisp...)

Voici quelques informations que vous pouvez obtenir à partir de long/lat: (liste complète des services web ici)

  • Trouver le plus proche de l'Adresse de
  • Trouver l'Intersection la plus proche
  • Trouver à proximité des Rues
  • Élévation
  • Fuseau horaire

12voto

john Points 61

Les fuseaux horaires sont désormais disponibles via l'API de Google

https://developers.google.com/maps/documentation/timezone/

8voto

Jiho Kang Points 1034

Le Yahoo lieux API fournit des informations sur le fuseau horaire via inverse de la géolocalisation.

Check it out.

http://developer.yahoo.com/geo/placefinder/guide/requests.html

4voto

chs Points 77

Ces air assez prometteur-

http://www.earthtools.org/webservices.htm

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X