**
requests库是python专门用来模拟浏览器发送网络请求的,能够模拟GET,POST,等多种请求是使用最频繁的库
requests安装
pip install requests
使用前需要导入
import requests
模拟浏览器向指定网站发送GET请求,需要注意一般网站都有反爬虫机制会判断请求头部的数据,这时需要自己定制请求头数据,然后再请求的时候加上头部数据
headers = {'user-agent': 'my-app/0.0.1'}
response = requests.get("www.baidu.com",headers=headers)
response: response对象是发送requests请求后返回的数据,里面包含了我们能够在网页中看见的所有数据
response对象在底层实现了一些方法可以帮助我们查看到获取到的数据常见的方法:
response.text:能够拿到网站的unicode字符串,但是可能会出现乱码,因为此时浏览器会猜测网站的编码,当猜测出错就出现了乱码
print(response.text)
response.content: content拿到的是从互联网下载下来的原始字节流,是Bytes数据类型,我们可以自己指定解码类型来解决乱码问题
print(response.content.decode('utf-8'))
POST请求:post请求也是一种常见的请求方式,常用在登录框等地方,发送POST请求需要传入请求需要的参数(如:用户名,密码,验证码等),requests能够方便的发送POST请求
模拟浏览器向指定网站发送POST请求,POST方法传入的数据一般是字典(dict)类型的
response = requests.post(url, data = {'key':'value'},headers=headers)
requests用法丰富我用的最多的就是GET,POST,可以自己去研究,一般的小型项目用requests库搓搓有余