优草派 > Python

requests教程?

杨梦琪         优草派

Requests教程

Requests是一个Python HTTP客户端库,它允许以简单而人性化的方式发送HTTP/1.1请求。本文将从多个角度介绍Requests库的用法。

requests教程?

1. 安装

在Python 3.X环境中,可以使用pip来安装requests库,如下:

>>> pip install requests

如果提示权限不足,可以在命令前加上sudo,即:

>>> sudo pip install requests

2. 最简单的请求

使用Requests发送HTTP请求非常简单,只需要调用requests库中的get()或post()等方法即可,示例如下:

>>> import requests

>>> r = requests.get('https://www.baidu.com/')

>>> print(r.text)

这里我们先导入requests库,然后使用其中的get()方法发送一个GET请求到百度首页,最后输出了响应的HTML源码。

3. 请求参数

在调用Requests的get()方法时,常常需要传入一些请求参数,如查询字符串和请求头等。在Requests中,可以通过params和headers参数来设置,示例如下:

>>> import requests

>>> headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36'}

>>> params = {'key1': 'value1', 'key2': 'value2'}

>>> r = requests.get('https://httpbin.org/get', headers=headers, params=params)

>>> print(r.url)

>>> print(r.text)

这里设置了headers和params两个参数,分别代表请求头和查询字符串。Requests自动将这些参数转化为GET请求中的参数,最后打印出了响应的URL和内容。

4. POST请求

在Requests中,可以使用post()方法来发送POST请求,示例如下:

>>> import requests

>>> data = {'key1': 'value1', 'key2': 'value2'}

>>> r = requests.post('https://httpbin.org/post', data=data)

>>> print(r.text)

这里我们首先定义了一个data对象,其中包含了POST请求的参数,然后使用post()方法将请求发送到指定URL,并输出了响应的内容。

5. Session对象

在Requests中,可以使用Session对象来保持会话状态,以便在多次请求中使用相同的参数、请求头和cookie等。示例如下:

>>> import requests

>>> s = requests.Session()

>>> s.get('https://httpbin.org/cookies/set/sessioncookie/123456789')

>>> r = s.get('https://httpbin.org/cookies')

>>> print(r.text)

这里我们先定义了一个Session对象s,然后使用get()方法发送了一个请求,设置了一个cookie。接下来再使用s对象发送第二个请求,此时Requests会自动将第一个请求中的cookie带入第二个请求中,输出响应内容时可以看到,第二个请求中也带有之前设置的cookie。

6. 异常处理

在使用Requests时,可能会出现各种异常,如网络异常、超时异常等。为了防止因为异常导致程序中断,需要加入适当的异常处理机制。示例如下:

>>> import requests

>>> from requests.exceptions import RequestException

>>> try:

... r = requests.get('https://www.baidu.com/', timeout=1)

... r.raise_for_status()

... print(r.text)

... except RequestException as e:

... print(e)

在这个例子中,我们在try块中发送了一个GET请求,设置了超时时间为1秒。然后使用raise_for_status()方法来检查响应码,如果响应码不是200,则会抛出一个HTTPError异常。最后在except块中处理异常。

总结

以上就是Requests库的用法介绍,从最简单的请求到传递参数、保持会话状态、异常处理等多个方面进行了讲解。总结一下,Requests使用简单、灵活,可以轻松完成各种HTTP请求任务,是Python中非常有价值的HTTP库。

  • 微信好友

  • 朋友圈

  • 新浪微博

  • QQ空间

  • 复制链接

取消
5天短视频训练营
新手入门剪辑课程,零基础也能学
分享变现渠道,助你兼职赚钱
限时特惠:0元
立即抢
新手剪辑课程 (精心挑选,简单易学)
第一课
新手如何学剪辑视频? 开始学习
第二课
短视频剪辑培训班速成是真的吗? 开始学习
第三课
不需要付费的视频剪辑软件有哪些? 开始学习
第四课
手机剪辑app哪个好? 开始学习
第五课
如何做短视频剪辑赚钱? 开始学习
第六课
视频剪辑接单网站APP有哪些? 开始学习
第七课
哪里可以学短视频运营? 开始学习
第八课
做短视频运营需要会什么? 开始学习
【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。

客服热线:0731-85127885

湘ICP备19005950号-1  

工商营业执照信息

违法和不良信息举报

举报电话:0731-85127885 举报邮箱:tousu@csai.cn

优草派  版权所有 © 2024