Comment utiliser l'API Baidu Map pour implémenter la fonction de recherche de ville en écrivant un programme en Python ?
Baidu Map est un service de cartographie largement utilisé qui fournit de puissantes fonctions de recherche de localisation et de navigation. Pour les développeurs, l'utilisation de l'API Baidu Map peut facilement implémenter des fonctions liées à la localisation géographique dans leurs propres programmes. Cet article explique comment utiliser Python pour écrire des programmes et utiliser l'API Baidu Map pour implémenter des fonctions de recherche de ville.
Tout d'abord, nous devons enregistrer un compte développeur Baidu Maps et demander une clé API. Créez une application sur la plateforme ouverte Baidu Map, puis obtenez l'AK (Access Key) correspondant. Cet AK sera utilisé dans le programme pour envoyer des requêtes HTTP afin d'obtenir des données.
Ensuite, nous devons installer la bibliothèque de requêtes de Python, qui est utilisée pour envoyer des requêtes HTTP et obtenir les données renvoyées. La bibliothèque de requêtes peut être installée à l'aide de la commande suivante :
pip install requests
Maintenant, nous pouvons commencer à écrire des programmes. Tout d'abord, importez les bibliothèques nécessaires :
import requests import json
Ensuite, définissez une fonction pour envoyer une requête HTTP pour obtenir les résultats de recherche de ville. Cette fonction reçoit un nom de ville en paramètre et renvoie une chaîne JSON de résultats de recherche de ville.
def city_search(city): url = "https://api.map.baidu.com/place/v2/search" params = { "query": city, "region": "中国", "output": "json", "ak": "你的AK" } response = requests.get(url, params=params) return response.text
L'URL ici est l'adresse de l'interface de recherche de ville de l'API Baidu Map, et les paramètres sont les paramètres de la requête. Parmi eux, la requête représente le mot-clé de recherche, la région représente la zone de recherche, la sortie représente le format de données renvoyé et ak est l'AK que nous avons demandé auparavant.
Ensuite, nous définissons une fonction pour analyser la chaîne JSON des résultats de recherche de ville et imprimer le nom et l'adresse de chaque résultat de recherche.
def parse_results(results): json_result = json.loads(results) if json_result["status"] == 0: for item in json_result["results"]: name = item["name"] address = item["address"] print(f"名称:{name},地址:{address}") else: print("查询失败")
Ici, nous analysons d'abord la chaîne JSON dans un objet Python, puis déterminons l'état du résultat renvoyé. Si le statut est 0, cela signifie que la requête est réussie, nous parcourons chaque résultat de recherche et obtenons le nom et l'adresse à imprimer. Si l'état n'est pas 0, la requête échoue et le message d'invite correspondant est imprimé.
Enfin, nous définissons une fonction principale pour obtenir le nom de la ville saisi par l'utilisateur, et appelons les deux fonctions ci-dessus pour implémenter la fonction de recherche de ville.
def main(): city = input("请输入城市名称:") results = city_search(city) parse_results(results) if __name__ == "__main__": main()
Dans la fonction principale, nous obtenons d'abord le nom de la ville saisi par l'utilisateur, puis appelons la fonction city_search pour envoyer une requête HTTP pour obtenir les résultats de la recherche, et enfin appelons la fonction parse_results pour analyser et imprimer les résultats.
À ce stade, nous avons terminé tout le code pour implémenter la fonction de recherche de ville en écrivant un programme en Python et en utilisant l'API Baidu Map.
Pour résumer, il n'est pas compliqué d'écrire un programme utilisant l'API Baidu Map et Python pour implémenter la fonction de recherche de ville. En envoyant une requête HTTP pour obtenir la chaîne JSON des résultats de recherche de ville, nous pouvons utiliser la bibliothèque json de Python pour l'analyser et extraire les informations clés à afficher. J'espère que cet article vous sera utile et je vous souhaite du succès dans votre développement à l'aide de l'API Baidu Map !
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!