Python 3 Geopy Tkinter GUI Script to Calculate Distance Between Two Countries or Cities or States in KM Full Project For Beginners

Python 3 Geopy Tkinter GUI Script to Calculate Distance Between Two Countries or Cities or States in KM Full Project For Beginners

 

Welcome folks today in this blog post we will be calculating distance between countries in km in tkinter using python. All the full source code of the application is shown below.

 

 

Get Started

 

 

In order to get started you need to install the following library using the pip command as shown below

 

pip install tkinter

 

pip install geopy

 

After installing the library you need to make an app.py file and copy paste the following code

 

app.py

 

# import module
from geopy.geocoders import Nominatim
from geopy import distance

# initialize Nominatim API
geolocator = Nominatim(user_agent="geoapiExercises")

# place input
Input_place1 = "delhi"
Input_place2 = "patna"

# Get location of the input strings
place1 = geolocator.geocode(Input_place1)
place2 = geolocator.geocode(Input_place2)

# Get latitude and longitude
Loc1_lat, Loc1_lon = (place1.latitude), (place1.longitude)
Loc2_lat, Loc2_lon = (place2.latitude), (place2.longitude)

location1 = (Loc1_lat, Loc1_lon)
location2 = (Loc2_lat, Loc2_lon)

# display the distance
print(distance.distance(location1, location2).km, " kms")

 

See also  Python 3 Tkinter Flappy Bird Clone Script GUI Desktop App Full Project For Beginners

 

Now if you execute the python script by typing the below command

 

python app.py

 

 

Now we can build the same application using tkinter by copying the python code as given below

 

app.py

 

# import modules
from tkinter import *
from geopy.geocoders import Nominatim
from geopy import distance

# user defined funtion
def get_dis():
    try:
        
        geolocator = Nominatim(user_agent="geoapiExercises")
        
        place1 = geolocator.geocode(str(e1.get()))
        place2 = geolocator.geocode(str(e2.get()))


        Loc1_lat,Loc1_lon = (place1.latitude),(place1.longitude)
        Loc2_lat,Loc2_lon = (place2.latitude),(place2.longitude)

        location1=(Loc1_lat,Loc1_lon)
        location2=(Loc2_lat,Loc2_lon)

        res = (str(distance.distance(location1, location2).km)+" Km")

        result.set(res)
    except:
        result.set("someting went wrong")

# object of tkinter
# with background set to light grey
master = Tk()
master.configure(bg='light grey')
master.title("Find Distance")

# Variable Classes in tkinter
result = StringVar();


# Creating label for each information
# name using widget Label 
Label(master, text="Enter first place : " , bg = "light grey").grid(row=1, sticky=W)
Label(master, text="Enter secound place : " , bg = "light grey").grid(row=2, sticky=W)

Label(master, text="Result :", bg = "light grey").grid(row=3, sticky=W)

# Creating label for class variable
# name using widget Entry
Label(master, text="", textvariable=result,bg = "light grey").grid(row=3,column=1, sticky=W)


e1 = Entry(master,width = 50)
e1.grid(row=1, column=1)
e2 = Entry(master,width = 50)
e2.grid(row=2, column=1)

# creating a button using the widget 
b = Button(master, text="Check", command=get_dis, bg = "white")
b.grid(row=1, column=2,columnspan=2, rowspan=2,padx=5, pady=5,)

mainloop()

 

See also  Python 3 Tkinter Multiplayer Online Chess Board + (Computer AI) Modern Color Game GUI Desktop App Full Project For Beginners

 

 

Leave a Reply