Obtenga la zona horaria de una ubicación dada usando Python

En este artículo, vamos a ver cómo obtener la zona horaria de una ubicación determinada. El módulo Timezonefinder es capaz de encontrar la zona horaria de cualquier punto de la tierra (coordenadas) fuera de línea. Antes de comenzar necesitamos instalar este módulo.

Módulos necesarios

  1. timezonefinder: este módulo no está integrado con Python. Para instalar este tipo, escriba el siguiente comando en la terminal.
pip install timezonefinder
  •  Geopy: .geopy facilita a los desarrolladores de Python la localización de las coordenadas de direcciones, ciudades, países y puntos de referencia en todo el mundo. Para instalar el módulo Geopy, ejecute el siguiente comando en su terminal.
pip install geopy

Entendamos este módulo con Paso a paso:

Paso 1: importe el módulo TimezoneFinder

Python3

from timezonefinder import TimezoneFinder

Paso 2:  haz un objeto de TimezoneFinder.

Python3

# object creation
obj = TimezoneFinder()

Paso 3: Pase la latitud y la longitud en un método timezone_at() y devuelva la zona horaria de una ubicación determinada.

Python3

# pass the longitude and latitude
# in timezone_at and
# it return time zone 
latitude = 25.6093239
longitude = 85.1235252
obj.timezone_at(lng=latitude, lat=longitude)

Producción:

'Asia/Kolkata'

Ahora escribamos un script para obtener la zona horaria con una ubicación específica.

Acercarse:

  • Importar el módulo
  • Inicialice la API de Nominatim para obtener la ubicación de la string de entrada.
  • Obtenga la latitud y la longitud con la función geolocator.geocode().
  • Pase la latitud y la longitud en un método timezone_at() y devolverá la zona horaria de una ubicación determinada.

Código:

Python3

# importing module
from geopy.geocoders import Nominatim
from timezonefinder import TimezoneFinder
  
# initialize Nominatim API
geolocator = Nominatim(user_agent="geoapiExercises")
  
# input as a geek
lad = "Dhaka"
print("Location address:", lad)
  
# getting Latitude and Longitude
location = geolocator.geocode(lad)
  
print("Latitude and Longitude of the said address:")
print((location.latitude, location.longitude))
  
# pass the Latitude and Longitude
# into a timezone_at
# and it return timezone
obj = TimezoneFinder()
  
# returns 'Europe/Berlin'
result = obj.timezone_at(lng=location.longitude, lat=location.latitude)
print("Time Zone : ", result)

Producción:

Location address: Dhaka
Latitude and Longitude of the said address:
(23.810651, 90.4126466)
Time Zone :  Asia/Dhaka

Publicación traducida automáticamente

Artículo escrito por kumar_satyam y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *