requests作为爬虫入门库,我在学习过程中感觉操作比较简单
本文将从下面几个方面来介绍其常见功能
1.如何使用两种请求get和post(其他请求不做说明)
2.如何伪装自身
3.如何对返回信息进行处理
- 首先,使用前需要导入库
import requests
- get和post请求的使用
URL = 'https://www.baidu.com/'
rGet = requests.get(URL)
rPost = requests.post(URL, data={'wd': '多人运动'})
那么如何判断是否请求成功呢?
print(rGet.status_code)
print(rPost.status_code)
看下图,当status_code=200的时候,就说明请求成功
如果要进行多参数的请求
keywords = {'key1': 'value1', 'key2': 'value2'}
r = requests.get(URL, params = keywords)
- 如何伪装自身(只说明头伪装,还有IP池等防禁IP的方法)
搜索界面摁F12,点击Network,下面就会有Request Headers,点开
看到下面红框的东西了吗,这个就是你浏览器在访问这个页面的时候,告诉服务器:“我是谁”
接下来我们就在代码中告诉浏览器“我是谁”
这里只更改了一个参数,User-Agent
header = {
'User-Agent':
'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36'
}
rGet = requests.get(URL, headers=header)
如果不伪装,那么你的头可能是这样的
服务器一看就知道你是偷渡客
- 最后当请求成功之后,就是返回信息的处理
输出返回信息的文本,要先进行编码转换,当然如果本身就是utf-8,那么中文就不会乱码
这里本身就是utf-8,只是为了说明操作方式
rGet.encoding='utf-8'
print(rGet.text)
最后,text有了,获取关键信息的方式最粗暴的方式就是正则表达式筛选,
但很不爽,对,就是不爽,之后我将介绍对text进行处理的python库BeautifuSoup库的使用
本文皆是在作者学习中所获,有错误欢迎斧正。