📅  最后修改于: 2023-12-03 15:04:53.467000             🧑  作者: Mango
Requests是Python中一个第三方库,用来发送HTTP请求。它比Python自带的urllib库使用起来更加方便,支持HTTP协议中的GET、POST、PUT、DELETE等请求方式,还支持数据传输,Cookie,身份认证,代理设置等功能。Requests库是Python爬虫常用的一个网络请求库,在数据采集过程中使用较为广泛。
使用pip命令进行安装:
pip install requests
代码示例:
import requests
response = requests.get("http://www.example.com")
print(response.text)
发送GET请求,可以在请求中添加headers和params参数。
params
参数可以指定请求中的查询参数。
import requests
payload = {'key1': 'value1', 'key2': 'value2'}
response = requests.get("http://httpbin.org/get", params=payload)
print(response.text)
headers
参数可以添加HTTP请求头。
import requests
headers = {'User-Agent': 'Mozilla/5.0'}
response = requests.get("http://www.example.com/", headers=headers)
print(response.text)
代码示例:
import requests
payload = {'key1': 'value1', 'key2': 'value2'}
response = requests.post("http://httpbin.org/post", data=payload)
print(response.text)
发送POST请求,可以在请求中添加headers和data参数。
data
参数可以指定请求中的数据。
import requests
payload = {'key1': 'value1', 'key2': 'value2'}
response = requests.post("http://httpbin.org/post", data=payload)
print(response.text)
headers
参数可以添加HTTP请求头。
import requests
headers = {'User-Agent': 'Mozilla/5.0'}
payload = {'key1': 'value1', 'key2': 'value2'}
response = requests.post("http://httpbin.org/post", headers=headers, data=payload)
print(response.text)
代码示例:
import requests
payload = {'key1': 'value1', 'key2': 'value2'}
response = requests.put("http://httpbin.org/put", data=payload)
print(response.text)
数据传输与POST请求相同,只需将请求方式改为PUT。
代码示例:
import requests
response = requests.delete("http://httpbin.org/delete")
print(response.text)
发送DELETE请求时,只需要将请求方式改为DELETE即可。
代码示例:
import requests
response = requests.get("http://www.taobao.com", timeout=1)
print(response.text)
timeout参数可以设置请求超时时间,单位为秒。
代码示例:
import requests
cookies = dict(name='test', age='18')
response = requests.get("http://httpbin.org/cookies", cookies=cookies)
print(response.text)
请求时也可以添加Cookie,只需在请求中添加cookies参数即可。
代码示例:
import requests
auth = ('username', 'password')
response = requests.get("http://httpbin.org/basic-auth/username/password", auth=auth)
print(response.text)
进行身份认证时,只需在请求中添加auth参数即可,username和password分别为认证的用户名和密码。
代码示例:
import requests
proxies = {"http": "http://10.10.1.10:3128", "https": "http://10.10.1.10:1080"}
response = requests.get("http://www.taobao.com", proxies=proxies)
print(response.text)
进行代理设置时,在请求中添加proxies参数即可,指定http和https代理即可。
以上就是Requests库的基本用法和高级用法介绍,使用Requests发送HTTP请求和进行数据采集非常方便,有了Requests库,爬虫开发工作也就变得更加简单快速了。