1.requests库中提供了如下常用的类
requests.Request:表示请求对象,用于准备一个请求发送到服务器
requests.Response:表示响应对象,其中包含服务器对HTTP请求的响应
requests.session:表示请求会话,提供 Cookie持久性、连接池和配置
import requests
# 准备url
url = 'https://www.baidu.com/s'
# 准备参数
params = {
'wd': '斗鱼TV'
}
# 请求头
headers = {'User-Agent': '............'}
# 发送请求,获取响应数据
response = requests.get(url, params=params, headers)
# 获取响应数据
print(response.text)
requests库的便捷之处,具体如下:
1.无须再转换为∪RL路径编码格式,拼接完整的∪RL路径。
2.无须再频繁地为中文转换编码格式。
3.从发送请求的函数名称,可以很直观地判断发送到服务器的方式。
另外, urlopen方法返回的是一个文件对象,需要调用read0方法一次性读取;而get函数返回的是一个响应对象,可以访问该对象的text属性查看响应的内容。
2.requests库提供许多发送HTTP请求函数
requests发送请求中,get请求使用data发送数据,post请求使用params发送数据
3、返回响应
import requests
# 发送请求url
url = 'http://www.baidu.com'
# 发送get请求
response = requests.get(url)
# 数据类型
print(type(response))
# 状态码
print(response.status_code)
# 1.第一组数据解析
# 设置编码方法
response.encoding='UTF-8'
# 打印文本
print(response.text)
# 2.第二组数据解析方法
# response.content 获取响应内容的二进制形式
print(response.content.decode())