किसी शहर की लॉन्गिट्यूड और लैटिट्यूड प्राप्त करने के लिए, हम geopy मॉड्यूल का उपयोग करेंगे। geopy पतों, शहरों, देशों आदि के निर्देशांक का पता लगाने के लिए थर्ड-पार्टी जियोकॉडर्स और अन्य डेटा स्रोतों का उपयोग करता है।
सबसे पहले, सुनिश्चित करें कि geopy मॉड्यूल इंस्टॉल है:
pip install geopy
निम्नलिखित उदाहरण में, हम शहर "हैदराबाद" की लॉन्गिट्यूड और लैटिट्यूड खोजने के लिए Nominatim जियोकॉडर का उपयोग करेंगे।
चरण
geopy मॉड्यूल से Nominatim geocoder इम्पोर्ट करें।
Nominatim API इनिशियलाइज़ करें और इनपुट स्ट्रिंग का स्थान प्राप्त करने के लिए geocode मेथड का उपयोग करें।
अंत में, location.latitude और location.longitude द्वारा स्थान की लैटिट्यूड और लॉन्गिट्यूड प्राप्त करें।
उदाहरण 1
# Import the required library from geopy.geocoders import Nominatim # Initialize Nominatim API geolocator = Nominatim(user_agent="MyApp") location = geolocator.geocode("Hyderabad") print("The latitude of the location is: ", location.latitude) print("The longitude of the location is: ", location.longitude)आउटपुट
यह कंसोल पर निम्नलिखित आउटपुट प्रिंट करेगा:
The latitude of the location is: 17.360589 The longitude of the location is: 78.4740613
इस उदाहरण में, आइए उदाहरण 1 के विपरीत करते हैं। हम निर्देशांकों का एक सेट प्रदान करके शुरू करेंगे और उस शहर, राज्य और देश को ढूंढेंगे जो उन निर्देशांकों को दर्शाते हैं। कंसोल पर आउटपुट प्रिंट करने के बजाय, हम आउटपुट प्रदर्शित करने के लिए चार लेबल के साथ एक tkinter विंडो बनाएंगे।
चरण
Nominatium API इनिशियलाइज़ करें।
geolocator.reverse() फ़ंक्शन का उपयोग करें और स्थान डेटा प्राप्त करने के लिए निर्देशांक (लैटिट्यूड और लॉन्गिट्यूड) प्रदान करें।
location.raw['address'] का उपयोग करके स्थान का पता प्राप्त करें और address.get() का उपयोग करके डेटा को पार करके शहर, राज्य और देश ढूंढें।
डेटा प्रदर्शित करने के लिए tkinter विंडो के अंदर लेबल बनाएं।
उदाहरण 2
from tkinter import * from geopy.geocoders import Nominatim # Create an instance of tkinter frame win = Tk() # Define geometry of the window win.geometry("700x350") # Initialize Nominatim API geolocator = Nominatim(user_agent="MyApp") # Latitude & Longitude input coordinates = "17.3850 , 78.4867" location = geolocator.reverse(coordinates) address = location.raw['address'] # Traverse the data city = address.get('city', '') state = address.get('state', '') country = address.get('country', '') # Create a Label widget label1=Label(text="Given Latitude and Longitude: " + coordinates, font=("Calibri", 24, "bold")) label1.pack(pady=20) label2=Label(text="The city is: " + city, font=("Calibri", 24, "bold")) label2.pack(pady=20) label3=Label(text="The state is: " + state, font=("Calibri", 24, "bold")) label3.pack(pady=20) label4=Label(text="The country is: " + country, font=("Calibri", 24, "bold")) label4.pack(pady=20) win.mainloop()आउटपुट
यह निम्नलिखित आउटपुट देगा:
