python系列之API接口调用
  8aDjDaB8gQij 2023年11月02日 35 0

python系列之API接口调用_API

    在现在这个共享主题大行的时代,对于软件来说,只有共享和开放才能发挥和开发软件代码最大的作用。而API正是为了这个主题出现的,API的出现大大加快了编程的速度,使得我们编程实现越来越复杂的功能成为了可能。所以掌握API的使用是我们编程的必备技能之一。


python系列之API接口调用_数据_02


        1


什么是API?




python系列之API接口调用_API_03

    API从技术角度来说就是应用程序编程接口。通过API我们可以直接获取一些我们需要的数据结果,而不需要自己编写相应的程序,有点类似模块化调用函数,大大加快了我们编程的速度。当然这个数据传输是需要网络的,所以一般API的形式看起来有点像网页链接。

    通俗来说API是什么呢?就是一些别人写好的库函数并且开放出来供我们使用,我们并不需要具体知道这些功能和函数是怎么实现的,只需要按照作者预先规定的好的标准和方式就可以使用这些函数。

    对于互联网公司企业来说,提供API的使用可以帮助程序开源,也可以为一些有需要的客户提供服务的同时保护自己程序代码的安全。

python系列之API接口调用_API_04




实例分析

下面我们将通过高德地图的交通态势查询和经纬度查询这两个API来详细介绍一下具体API的使用和操作。

    首先想要使用高德地图的API服务,需要去注册一个账号,这里省略。

python系列之API接口调用_数据_05

    注册完成后可以按照网页指示进行相应API的创建,我们创建一个经纬度查询。这里比较重要的是这个开发文档,它规定了API的使用格式和方法,还有实例供我们理解,是我们学习使用API的有力工具。一般来说,每个提供API的企业公司都会有详细的开发文档供我们学习和利用。如下图,节选。

python系列之API接口调用_python_06

    其中比较重要的是这个API的使用方法,我们看一下示例,一般已经会使用,下面我们来仔细看看:

python系列之API接口调用_API_07

    这里是API使用的基本方法,后面有对parameters作的详细介绍,我们只需要看我们用到的即可。

python系列之API接口调用_API_08

    而对于请求方式,则是我们在使用API的是通过什么方式来请求获取我们需要的数据结果。这里是get,我们用python中的request.get即可发送请求,对于requests在前面推文也谈到过(传送门)。

python系列之API接口调用_数据_09

    Address就是要查询地址的经纬度;output就是返回数据的格式,(这里是xml,在前面的推文中(传送门)我们说过这些网络数据格式);接下来的key就是我们开发者注册申请使用高德地图的功能的准许的一个凭证。

python系列之API接口调用_python_10

    在正确使用API之后,我们还需要对发回来的数据结果进行一些处理。发回来的数据都是web格式的数据,如上图所示。在python系列之网络爬虫(三)中,也是通过对这个例子详细讲解数据格式的问题,这里不再解释,大家可以自己点击跳转去查看。

 下面我们用python借助高德这个API来实现地名查询经纬度:

python系列之API接口调用_API_11

  程序输出结果:

python系列之API接口调用_API_12

    上面依次是服务器发送返回的原始格式的数据,查询的地名,查询到的经纬度。


总结与体会

python系列之API接口调用_python_13

        1




    我们用python借助高德这个简单的API实现了地名查询经纬度的功能。对于高德的交通态势查询也是类似的,我们可以通过查询开发文档来学习该API的使用。

    其实对于其他的API也是大同小异,即使提供服务的公司不一样,但是API的学习和使用也是依葫芦画瓢。

    除了上述以外,还有各种各样的功能都可以通过API来实现,比如天气查询,IP地址查询等等(见下图),我们只需要调用API就能轻松获取相应的某些功能。

python系列之API接口调用_数据_14

    当许多的API组合起来,能实现更为复杂的功能。后面会会写一篇用python实现天气查询和预报以及下雨预警机器人的推文,这个程序就是通过多个API,实现了复杂的主动天气预警的功能。

    所以我们必须熟悉和掌握API的使用。





python系列之API接口调用_python_15

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
8aDjDaB8gQij