Il existe de nombreuses bibliothèques Python disponibles qui fournissent des services de géolocalisation, notamment le module geopy, qui permet aux programmeurs de géocoder et d'inverser le géocodage d'adresses et de lieux. Le calcul de la distance entre deux points devient plus facile avec le package geopy, qui permet également le calcul de la distance entre deux points.
Il existe plusieurs bibliothèques pour travailler avec des données géographiques en Python, notamment GeoDjango, GeoPandas et PyProj. Ces bibliothèques permettent aux programmeurs de travailler plus facilement avec des données géographiques telles que des points, des lignes et des polygones, leur permettant ainsi de concevoir des applications nécessitant des cartes et une analyse spatiale.
Vous pouvez utiliser la bibliothèque geopy en Python pour obtenir une localisation géographique. Les étapes suivantes vous guident pour obtenir la géolocalisation en Python -
Dans votre invite de commande ou votre terminal, entrez pip install geopy pour installer la bibliothèque Geopy.
Importez les modules de la bibliothèque Geopy requis. La classe Nominatim est utilisée pour le géocodage et la classe Point est utilisée pour représenter des points géographiques.
from geopy.geocoders import Nominatim from geopy.point import Point
Créez un objet de classe Nominatim qui vous permettra d'effectuer du géocodage. Pour spécifier votre programme, vous pouvez transmettre une chaîne d'agent utilisateur.
Pour géocoder une adresse ou un lieu, utilisez la méthode de géocodage de la classe Nominatim. L'emplacement que vous souhaitez géocoder est fourni par cette méthode sous forme de chaîne.
geolocator = Nominatim(user_agent="my_app") location = geolocator.geocode("1600 Amphitheatre Parkway, Mountain View, CA")
Un objet Location contenant des informations détaillées sur un emplacement géocodé est le résultat de la fonction de géocodage. Les propriétés de latitude et de longitude de l'objet Point permettent d'accéder aux coordonnées de latitude et de longitude de l'emplacement.
point = Point(location.latitude, location.longitude)
Utilisation Vous pouvez extraire les coordonnées ou la latitude et la longitude d'un lieu donné en utilisant géopy. Afin d'utiliser des coordonnées pour représenter un emplacement, vous pouvez l'utiliser.
# importing geopy library from geopy.geocoders import Nominatim # calling the Nominatim tool loc = Nominatim(user_agent="Get Prayagraj") # entering the location name getLoc = loc.geocode("Civil Lines Prayagraj") # printing address print(getLoc.address) # printing latitude and longitude print("Latitude = ", getLoc.latitude, "\n") print("Longitude = ", getLoc.longitude)
Civil Lines Prayagraj , Uttar Pradesh , 211001 , India Latitude =25.454479 Longitude = 81.8338255
Cette méthode est exactement la même que celle ci-dessus ; la seule différence est que nous allons désormais utiliser la méthode reverse(), qui reçoit les coordonnées (latitude et longitude) en paramètres, au lieu de la fonction géocodage. Cette méthode renvoie l'adresse après avoir reçu les coordonnées.
# importing modules from geopy.geocoders import Nominatim # calling the nominatim tool geoLoc = Nominatim(user_agent="GetPrayagraj") # passing the coordinates locname = geoLoc.reverse("26.7674446, 81.109758") # printing the address/location name print(locname.address)
Vinayak City Centre , Tashkant Marg , Civil Lines , Prayagraj , Uttar Pradesh , 211001 , India
L'API Google Maps est l'un des moyens les plus populaires et les plus conviviaux d'obtenir des données de géolocalisation en Python, mais il existe d'autres options. Nous pouvons obtenir rapidement les coordonnées de longitude et de latitude de n'importe quelle adresse en installant la bibliothèque googlemaps et en fournissant une clé API valide. L'API OpenStreetMap et la bibliothèque GeoPy sont d'autres options possibles.
Sécurité et flexibilité. En suivant quelques étapes simples, les développeurs peuvent définir des décorateurs personnalisés et les appliquer à une vue pour modifier son comportement ou appliquer un contrôle d'accès.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!