目录
2.1 伪装库:fake-useragent? ? ? ? ? ? ? ?
user-agent:是识别浏览器的一串字符串,相当于浏览器的身份证,在爬取网站数据时,频繁的更换可以避免触发相对应的反爬机制;
pip install fake-useragent
import requests
import fake_useragent
#自动生成UserAgent
ua = fake_useragent.UserAgent().random
headers = {
'user-Agent':ua
}
resp = requests.get('https://www.douyin.com/', headers = headers)
print(resp) # <Response [200]>
- 作用: 主要是标识请求从哪个页面过来的;
- 例如:在登录某站点,成功会跳转到主页面,那么Referer的值就是登录页面的url;
- 场景:来源统计,防盗链处理等;
- 一般将网站的默认主页作为Referer值;
- cookie是浏览器保存在客户端电脑上的一小段文本;
- 通俗点说:一个用户访问服务器是,服务器会讲一些key-value对返回给浏览器客户端,并给这些数据加一些限制,这个用户下次访问服务器时,数据通过请求头又被完整的给带回服务器,服务器根据这些信息判断识别不同用户;
- http请求是无状态请求,所以这个cookie就标识了请求身份;如果不加cookie,哪怕是连续两次请求,服务器也无法确定是不是同一个用户访问;
对比项 | cookie | session |
---|---|---|
存储位置 | 存储在客户端 | 存储 在服务器 |
存储大小 | 一般小于4KB | 大小无限制,但一般不会太大 |
存储有效期 | 不超过设置过期时间,可以一直存储 | 一般session是30分钟 |
安全性 | 存储在客户端,所以可以分析cookie进行cookie欺骗 | 存储在服务器,安全性较高 |
跨域支持 | cookie支持跨域访问 | session不支持跨域访问 |
扩展跨域:协议,ip地址,端口 | ||
对服务器压力 | 不占用服务器资源 | 占用服务器资源 |
数据类型 | 只能是ASCII编码字符串 | 任意数据类型 |