Aplicación GUI para buscar el nombre de un país de un estado o ciudad dado usando Python

En estos artículos, vamos a escribir secuencias de comandos de python para buscar un país desde un nombre de estado o ciudad determinado y vincularlo con la aplicación GUI. Usaremos el módulo GeoPy. Los módulos GeoPy facilitan la ubicación de las coordenadas de direcciones, ciudades, países, puntos de referencia y código postal.

Antes de comenzar, necesitamos instalar el módulo GeoPy, así que ejecutemos este comando en su terminal.

pip install geopy

Acercarse:

  • Módulo de importación
  • Utilice la API de Nominatim para acceder al conjunto de coordenadas correspondiente
  • geocode() para obtener la ubicación de un lugar determinado

La GUI se vería a continuación:

Nota: Nominatim utiliza datos de OpenStreetMap para encontrar ubicaciones en la Tierra por nombre y dirección (codificación geográfica).

A continuación se muestra la implementación:

Python3

from geopy.geocoders import Nominatim
 
 
geolocator = Nominatim(user_agent = "geoapiExercises")
location = geolocator.geocode("Delhi")
print("Country Name: ", location)

Producción: 

Nombre del país: Delhi, Kotwali Tehsil, Centro de Delhi, Delhi, 110006, India 
 

Aplicación para buscar el país de una ciudad/estado determinado con Tkinter: este script implementa la implementación anterior en una GUI.

Python3

# importing the modules
from geopy.geocoders import Nominatim
from tkinter import *
from tkinter import messagebox
 
def getinfo():
    geolocator = Nominatim(user_agent = "geoapiExercises")
    place = e.get()
    place_res.set(place)
    location = geolocator.geocode(place)
    res.set(location)
 
# object of tkinter
# and background set for light grey
master = Tk()
master.configure(bg = 'light grey')
 
# variable Classes in tkinter
place_res = StringVar();
res = StringVar();
 
# creating label for each information
# name using widget Label
Label(master, text = "Enter place :" ,
      bg = "light grey").grid(row = 0, sticky = W)
Label(master, text = "Place :" ,
      bg = "light grey").grid(row = 1, sticky = W)
Label(master, text = "Country Address :" ,
      bg = "light grey").grid(row = 2, sticky = W)
 
# creating label for class variable
# name using widget Entry
Label(master, text = "", textvariable = place_res,
      bg = "light grey").grid(row = 1, column = 1, sticky = W)
Label(master, text = "", textvariable = res,
      bg = "light grey").grid(row = 2, column = 1, sticky = W)
 
e = Entry(master)
e.grid(row = 0, column = 1)
 
# creating a button using the widget 
# Button that will call the submit function
b = Button(master, text = "Show", command = getinfo )
b.grid(row = 0, column = 2, columnspan = 2,
       rowspan = 2, padx = 5, pady = 5)
 
mainloop()

 
Producción:

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 *