基于高德地图API在Python中实现地图功能的方法

本文介绍在高德开放平台 中,申请、获取地图APIKey 的方法;同时通过简单的Python 代码,调取API 信息,对所得Key 的可用性加以验证。

首先,我们进入高德开放平台官方网站。如果大家是第一次使用高德地图开放平台,那么需要点击右上角注册一个开发者账号。

注册完毕后,登录这一账号,并点击如下图紫色框内所示的“控制台 ”。

image

随后,点击左侧“应用管理 ”中的“我的应用 ”,并到右上角点击“创建新应用 ”;如下图所示。

基于高德地图API在Python中实现地图功能的方法

随后,在弹出的窗口中,依据我们的需求,输入应用的名称及其类型;如下图所示。其中,名称 就按照我们实际需求来命名,类型 则按照我们的应用场景来选择即可。

基于高德地图API在Python中实现地图功能的方法

接下来,在界面右上角,点击“添加Key ”;如下图所示。

基于高德地图API在Python中实现地图功能的方法

随后,为这个Key 命名,并选择所需的服务平台;如下图所示。我这里后续打算基于Python 语言的requests库来使用API ,所以这里就选择了“Web服务 ”。

基于高德地图API在Python中实现地图功能的方法

随后,即可生成Key ,如下图中紫色框内所示。

基于高德地图API在Python中实现地图功能的方法

获取Key 之后,我们可以验证一下这个Key 是否可以使用。在这里,给出一个基于Python 语言,使用高德开放平台提供的“天气查询 ”功能,对Key 加以验证的代码;代码如下。

```python
# -*- coding: utf-8 -*-
"""
Created on Wed May 29 20:36:11 2024

@author: fkxxgis
"""

import json
import requests

key = "在这里输入您的key"
city_code = "410300"

response = requests.get("https://restapi.amap.com/v3/weather/weatherInfo?key=" + key + "&city=" + city_code)
text = response.text
result = json.loads(text)
need = result["lives"][0]

print("您查询的" + need["province"] + need["city"] + "在" + need["reporttime"] + "的天气为" + need["weather"] + ",温度为" + need["temperature_float"] + "," + need["winddirection"] + "风" + need["windpower"] +"级。")
```

其中,大家在使用上述验证代码时,需要将key = "在这里输入您的key"这句代码引号中的内容,修改为通过前述操作所获取的Key ;同时,还可以修改city_code,从而对不同城市、区域的天气加以查询。这里关于城市的代码,大家可以参考这个网站

随后,即可执行上述代码;执行代码后,将打印出指定区域在查询时刻的实时天气。

基于高德地图API在Python中实现地图功能的方法

可以看到,已经可以获取到对应地区的实时天气了,说明前述获取Key 的流程已经成功。

此外,关于API 使用的方法,我们后续会用更多博客来详细介绍,所以上述代码我们就暂时不再逐句解释了,在这里仅仅用来验证我们所获取的Key 的可用性。

此外,对于每一位高德开放平台的开发者,我们所能调取不同功能API 的次数也是有每日限制的,具体配额我们可以在“我的应用 ”中,通过“查看配额 ”选项来查阅;如下图所示。

基于高德地图API在Python中实现地图功能的方法

至此,大功告成。

文章整理自互联网,只做测试使用。发布者:Lomu,转转请注明出处:https://www.it1024doc.com/5371.html

(0)
LomuLomu
上一篇 2025 年 1 月 6 日 下午12:10
下一篇 2025 年 1 月 6 日

相关推荐

  • 数据结构(Java版)第五期:ArrayList与顺序表(下)

    目录 一、数组实现顺序表 在探讨顺序表的实现时,我们通常会想到数组这一基础数据结构。本文将通过一个简单的例子,展示如何使用数组来构建一个顺序表,并实现其基本操作。 public class MyArrayList { private int[] arr; private int size; // 记录有效元素的数量 // 构造函数,初始化数组容量 publi…

    未分类 2024 年 12 月 28 日
    12400
  • 数据结构(Java版)第五期:ArrayList与顺序表(下)

    目录 一、用数组实现顺序表 一、用数组实现顺序表 我们提到过,顺序表是基于数组的封装,这次我们以int为例,用数组去实现一个顺序表。 “`java public class MyArrayList { private int[] arr; public MyArrayList(int capacity){//指定初始容量 arr = new int[cap…

    2024 年 12 月 31 日
    12200
  • 『玩转Streamlit』–上传下载文件

    在Web应用中,文件的上传下载 是交互中不可缺少的功能。 因为在业务功能中,一般不会只有文字的交互,资料或图片的获取和分发是很常见的需求。 比如,文件上传 可让用户向服务器提交数据,如上传图片分享生活、提交文档用于工作协作等,丰富应用功能。 而文件下载 则使用户能获取服务器端的资源,像下载软件、报告等,提升用户对应用内容的获取能力,增强用户体验和应用实用性。…

    2024 年 12 月 30 日
    14700
  • 一问一答学习PyQT6,对比WxPython和PyQt6的差异

    在我的基于WxPython的跨平台框架完成后,对WxPython的灵活性以及强大功能有了很深的了解,在跨平台的桌面应用上我突然对PyQt6的开发也感兴趣,于是准备了开发环境学习PyQt 6,并对比下WxPython的差异来进行深入的了解,发现它们很多理念和做法是如此的类似。 1、pyqt6都有那些布局控件? PyQt6 提供了多种布局控件,帮助开发者轻松地将…

    2025 年 1 月 12 日
    13100
  • python SQLAlchemy ORM——从零开始学习 01 安装库

    01基础库 1-1安装 依赖库:sqlalchemy “`python pip install sqlalchemy #直接安装即可 “` 1-2导入使用 这里讲解思路【个人的理解】,具体写其实就是这个框架: 导入必要的接口【有创建engine以及declarative_base】 通过create_engine接口创建engine,根据翻译可以翻译成引…

    2025 年 1 月 13 日
    13500

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信