一、安装requests库
在命令行输入
pip install requests
安装好后,可以在命令行通过以下命令进行查询
pip list
二、引入requests
在程序运行之前,首先都要将requests库进行引入
import requests
三、requests应用
1、get请求
GET请求通常用于请求服务器发送某个资源(如网页、图片等)或查询数据库中的数据。它适用于对数据敏感性不高、数据量较小的场景。
import requests # 引入库
response = requests.get(url='https://www.baidu.com/') #requests.get()函数返回一个Response对象,该对象包含了服务器对请求的响应。这个对象被赋值给变量response。
print(response.text) # text为response对象的属性,包含了从服务器接收到的响应内容,即网页的HTML源代码。
2、post请求
POST请求将需要发送的数据放在请求的消息体中,而不是像GET请求那样将数据附加在URL的查询字符串中。这种方式使得POST请求能够发送大量的数据,而不会受到URL长度限制的影响。
import requests
data = {"name":"测试"} #这个字典将被用作POST请求的请求体(body),模拟向服务器发送表单数据。
# post请求获取页面数据,并向页面传递数据(表单:)
# request 具备爬取整个页面的能力,不具备某一段的爬取
response = requests.post("https://httpbin.org/post",data = data)# data=data 类似于 形参=实参,实参data 是我们自己写的内容
print(response.text)
3、get带参数的请求
import requests # 导入requests库
data = {"key1":"value1","key2":"value2"} # 创建一个字典,包含要传递的参数
response = requests.get('http://httpbin.org/get',params=data)
print(response.headers) #打印出响应的头部信息(headers)
print(response.url)#打印出实际请求的URL
print(response.text)#打印出响应的文本内容
结果如下
4、获取相应数据
(1)获取图片
# 使用request可以获得整个页面数据,
# 如果希望获得页面中的某一种数据该如何做
# 图片地址:https://img14.360buyimg.com/n1/jfs/t1/244594/27/6268/106374/65fdb5afF8d0484bd/ce22244c76a389cf.jpg
import requests
# 获得图片
response = requests.get("https://blog.youkuaiyun.com/m0_59162248/article/details/128682228?spm=1001.2101.3001.6650.17&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-17-128682228-blog-129703015.235%5Ev43%5Econtrol&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-17-128682228-blog-129703015.235%5Ev43%5Econtrol&utm_relevant_index=27")
with open('tupian.jpg','wb') as f: #将网络请求返回的图片二进制数据保存到本地名为tupian.jpg的文件中。
f.write(response.content) ##这里的'wb'模式表示“写入”(write)和“二进制”(binary)模式,