python调用第三方接口

为什么要用python调用第三方接口?

以往总是会想当然的认为,调用第三方接口只能是前端的工作,但最近在做一个程序时发现,这项工作完全可以使用python来解决,挺惊喜的,毕竟这样就可以在不涉及前端的情况下,获取一些第三方的数据。

需要什么库?

requests

没错,就是那个在爬虫中常用的库

参考:Python requests 模块 | 菜鸟教程 (runoob.com)

有哪些请求方式?

常规后端接收请求的方式它都是支持的,最常见的当然是get和post

如何使用?

这里只例举get请求和post请求中最常见的方式,详细可见:Python requests 模块 | 菜鸟教程 (runoob.com)

get请求

最原始的get请求

import requests

res = requests.get('http://api.botwl.cn/api/yiyan')

print(res.text)

修改headers的get请求

import requests

headers={
    # 这个数据需要由自己的浏览器来决定
    'User-Agent': '***'
}
res = requests.get('http://api.botwl.cn/api/yiyan', headers=headers)

print(res.text)

当然,这里的headers可以添加content-type,cookie等参数,关于headers的参数在哪里找,python爬虫总结 - 临安剑客 - 博客园 (cnblogs.com) 这篇里面讲了一些

post请求

post请求相较于get请求,参数肯定是少不了的

import requests

headers = {
    'content-type': '***',
    'User-Agent': '***',
    'Cookie': '***'
}

url = '***'
params = {
    'key1': 'value1',
    'key2': 'value2',
    '***':'***'
}
res = requests.post(url, json=params, headers=headers)

print(res.text)

可以没有headers,但访问有些网址必须要有

总结

python语言的库总是能给我带来惊喜。关于调用第三方接口,requests库可以帮助我们解决不使用前端(前端一般是ajax请求)的情况下获取其它后端的数据。我们可以通过在网上抓包,再配合requests库实现一些意想不到的程序功能。

posted @ 2022-09-18 00:34  临安剑客  阅读(1262)  评论(0编辑  收藏  举报