Requests教程
Requests是一个Python HTTP客户端库,它允许以简单而人性化的方式发送HTTP/1.1请求 。本文将从多个角度介绍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 = https://www.ycpai.cn/python/{'key1': 'value1', 'key2': 'value2'}
>>> r = requests.post('https://httpbin.org/post', data=https://www.ycpai.cn/python/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库的用法介绍,从最简单的请求到传递参数、保持会话状态、异常处理等多个方面进行了讲解 。总结一下,Requests使用简单、灵活,可以轻松完成各种HTTP请求任务 , 是Python中非常有价值的HTTP库 。
推荐阅读
- pycharm激活教程?
- python mac 安装教程?
- 花卷的详细做法视频教程 花卷的详细做法
- 白黄芒果双皮奶的制作方法 芒果双皮奶的简单做法视频教程
- 如何切芒果窍门视频教程 如何切芒果窍门
- ae基础教程新手入门?
- ai毛玻璃制作教程?
- 葱花鸡蛋饼做法视频教程 葱花鸡蛋饼做法
- 小鸡腿怎么烧好吃 小鸡腿怎么烧好吃又简单视频教程
- ps文字效果教程设计