Requests库
介绍
- Requests是Python中用于进行HTTPS请求的库。它提供了一种简单直观的API,用于发送HTTP,HTTPS请求和处理响应。
request.get()函数
参数
-
url,一般放置需要请求的URL
-
headers,一般用于User-agent(UA)伪装,避免服务器识别出机器请求,headers的获取方法可以为浏览器单击右键选择检查,随后点击网络,刷新(fn+F5),随后随机点击一个数据包,找到user-agent字段
-
proxies, 一般用于批量爬取,目的是避免了服务器识别同一个机器频繁请求从而导致禁止该主机爬取
-
cookies,发送请求的时候携带上cookies(字典形式),方便服务器保存用户信息,cookies在浏览器单击右键选择检查,随后点击网络,刷新(fn+F5),寻找到一个cookies字段。
-
parms ,传入其他参数,方便方便灵活使用
实例
improt request
header = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
url = 'https://baidu.com'
proxies = {'http': 'http://10.0.0.1:8080', 'https': 'https://10.0.0.1:8080'}
response = request.get(url=url, headers=header)
print(response.text) # 显示的是获取到的html文档
request.get()返回结果
- status_code,为返回状态码,如果是200,证明请求成功
- text, 返回的html文档元素
- content,因为请求的可能不是网址,如果url不是网址,就将内容返回到content中。
- response.json()方法,
data=response.json()
,data返回将content处理为json类型的数据
随后请求到可以用Xpath,bs4等方法进行解析数据。
request.post()函数
介绍
- 主要是向指定的url发送POST请求,发送数据,返回响应的文本/Response对象,返回值为一个response.Response对象
参数
- url,需要发送的参数
- data,需要传入的数据,可以为字典,元组列表,字节,或者是要发送到URL的文件对象
- json,发送到URL的JSON对象
- cookies,跟上述get方法类似
- proxies,跟上述的get方法类似
例子
import requests
url = 'https://www.begtut.com/try/python/demopage.php'
data= {'somekey': 'somevalue'}
response = requests.post(url, data = data)
print(response)
备注
可以看结合Xpath运用等食用。链接如下。Xpath介绍以及语法