今天说说反爬虫与反反爬虫
喜欢爬虫的伙伴都知道,在爬网站的内容的时候并不是一爬就可以了,有时候就会遇到一些网站的反爬虫,折回让你爬不到数据,给你返回一些404,403或者500的状态码,这有时候会让人苦不堪言,就如我昨天发的爬网易云音乐评论,在你爬的数据较多时,网站认为你是一个机器,就不让你爬了,网易云就给我返回了一个{“code”:-460,“msg”:“Cheating”},你不看下他的返回内容还不知道自己被反爬虫,不过不用担心,既然网页有反爬虫,可我们也有反反爬虫,今天就给大家说说反爬虫与反反爬虫。
1
网页的反爬虫
1.通过网页的请求头
首先我们先看看网易云音乐评论的请求头1802099052.png
User-Agent:这个是保存用户访问该网站的浏览器的信息,我上面这个表示的是我通过window的浏览器来访问这个网站的,如果你是用python来直接请求这个网站的时候,这个的信息会带有python的字眼,所以网站管理员可以通过这个来进行反爬虫。
Referer:当浏览器发送请求时,一般都会带上这个,这个可以让网站管理者知道我是通过哪个链接访问到这个网站的,上面就说明我是从网易云音乐的主页来访问到这个页面的,若你是用python来直接请求是,就没有访问来源,那么管理者就轻而易举地判断你是机器在操作。
authorization:有的网站还会有这个请求头,这个是在用户在访问该网站的时候就会分配一个id给用户,然后在后台验证该id有没有访问权限从而来进行发爬虫。
2.用户访问网站的ip
当你这个ip在不断地访问一个网站来获取数据时,网页后台也会判断你是一个机器。就比如我昨天爬的网易云音乐评论,我刚开始爬的一首《海阔天空》时,因为评论较少,所以我容易就得到所有数据,但是当我选择爬一首较多评论的《等你下课》时,在我爬到800多页的时候我就爬不了,这是因为你这个ip的用户在不断地访问这个网站,他已经把你视为机器,所以就爬不了,暂时把你的ip给封了。
2
我们的反反爬虫
1.添加请求头
既然在请求网页的时候需要请求头,那么我们只需要在post或者get的时候把我们的请求头加上就可以了,怎样加?可以使用requests库来添加,在post,get或者其他方法是加上headers参数就可以了,而请求头不需要复制所有的信息,只需要上面的三个之中一个就可以,至于哪个自己判断,或者直接添加所有也可以,这样我们就可以继续爬了。
2.使用代理ip
若是网站把你的ip给封了,你添加什么的请求头也都没有用了,那我们就只有等他解封我们才可以继续爬吗?我可以十分自信告诉你:不需要,我们可以使用代理ip来继续爬,我们可以爬取网络上的免费ip来爬,至于免费的代理ip质量怎样你们应该知道,有必要可以买些不免费的,这样好点,我们平时的练习用免费的代理ip就可以了,可以自己爬取一些免费代理ip建成ip池,然后爬的时候就把ip随机取出来,我偷偷告诉你:小编明天的文章就是教你怎样搭建自己的代理ip池。
END
结束语:上面的只是个人在爬一些网站时候遇到的一些反爬虫,这只是很简单的,还有那些动态网站的反爬虫自己还没有接触,等到以后接触了,再一 一补充。最后给大家在爬虫上的建议,就是爬取速度不要太快,最好每几个就隔几秒,不要给服务器造成太大的压力,也可以在爬虫的时候选择一些访问量少点的时间段,这是对服务器好,也是对你自己好!
原文链接
https://mp.weixin.qq.com/s?__biz=MzU0NzY0NzQyNw%3D%3D&mid=2247483677&idx=1&sn=88f5f682d4a965db4d882a59aac9bc88&chksm=fb4a7bb1cc3df2a760826855da431063cdec7be8af8ac9fb4dd76b4067166161f7ccee8bc152#rd
服务推荐
- 私密代理ip
- 隧道代理ip
- 微信域名拦截检测服务
- 微信域名在线拦截检测工具
- 微信域名在线批量拦截检测工具
今天说说反爬虫与反反爬虫相关推荐
- 【Python3爬虫】常见反爬虫措施及解决办法(二)...
[Python3爬虫]常见反爬虫措施及解决办法(二) 这一篇博客,还是接着说那些常见的反爬虫措施以及我们的解决办法.同样的,如果对你有帮助的话,麻烦点一下推荐啦. 一.防盗链 这次我遇到的防盗链,除了 ...
- python爬图片_网络爬虫经验:反爬和反反爬
我想很多人入门python是图片爬虫,就是HTTP请求,保存一下图片,用python实现非常快.网上很多爬虫的教程就讲到这里,实际上很单一,看了跟没看没什么区别,都是找一下网页的规律,然后Beauti ...
- Python爬虫自学之第(①)篇——爬虫伪装和反“反爬”
有些网站是防爬虫的.其实事实是,凡是有一定规模的网站,大公司的网站,或是盈利性质比较强的网站,都是有高级的防爬措施的.总的来说有两种反爬策略,要么验证身份,把虫子踩死在门口:要么在网站植入各种反爬机制 ...
- python爬虫常见反爬措施_爬虫常见的反爬措施有哪些
爬虫常见的反爬措施有三种: 1.header头部信息 解决方法: 加User-Agent值: 如果不加header头,部分网站服务器判断不到用户的访问来源,所以会返回一个404错误来告知你是一个爬虫, ...
- 有道翻译 爬虫,分析反爬 附代码
有道翻译 爬虫,破解反爬加密 0引言 1准备工作 开始第一部分 开始第二部分 准备工作,下载并安装requests模块 确定反爬用的变量 确定变量的值 requests模块的使用 0引言 我在这里会很 ...
- 【python】——爬虫05 初级反爬笔记
这里写自定义目录标题 一.反爬 1. 反爬原因 2. 服务器常反爬虫 3. 一些概念 4. 反爬方向 4.1 基于身份识别进行反爬 headers 请求参数 4.2 基于爬虫行为进行反爬 请求频率 爬 ...
- python爬虫反爬-爬虫怎么测试反爬?
网站有没有反爬,如果你没有用爬虫抓取过,你是不可能知道的. 就算要测试,你还要尝试不同的delay. 如果设置的 delay 在网站的反爬频率外,那就测不出来. 如果在频率内,那就被封.或者封ip,或 ...
- 爬虫(Spider)与反爬虫(Anti-Spider)
爬虫(Spider),反爬虫(Anti-Spider),反反爬虫(Anti-Anti-Spider),这之间的斗争恢宏壮阔... Day 1 小莫想要某站上所有的电影,写了标准的爬虫(基于HttpCl ...
- Python有道翻译爬虫,破解反爬虫机制,解决{errorCode:50}错误
一.引言 参考网址:https://tendcode.com/article/youdao-spider/ 当前成功时间:2019-6-28 转自个人开源博客:https://my.oschina.n ...
- Python爬虫:字体反爬处理(猫眼+汽车之家)-2018.10
环境:Windows7 +Python3.6+Pycharm2017 目标:猫眼电影票房.汽车之家字体反爬的处理 -全部文章: 京东爬虫 .链家爬虫.美团爬虫.微信公众号爬虫.字体反爬.Django笔 ...
最新文章
- libev源码解析——定时器监视器和组织形式
- 利用JFreeChart生成简单柱状图(Java)
- avue form提交变为不可编辑_教程42——富文本编辑器的原理(项目)
- 0x0806 ARP协议分析
- 【笔记】springboot+spring security登录流程实现
- GDCM:获取SubSequence数据的测试程序
- 【2016年第3期】大数据时代的数据科学家培养
- 【mac】Mac 安装 RabbitMQ
- 实分析royden第四版答案_高价实木变板木掺了“假”的实木家具!搞懂这些名词,买家具不上当...
- mysql双机热备 读写分离_轻松搭建MySQL主从复制、读写分离双机热备)
- 「干货」那些必知的物联网行业术语
- 川藏自驾游的神州租车攻略
- RecyclerView滚动指定条目并在页面中居中
- 湖仓一体:数据湖vs数据仓库之争?
- 美妆个护市场真的相信“小鲜肉”吗?
- thumbnailator给图片添加水印
- 进制转换:十六进制转八进制、十六进制转十进制
- 关于密码的那些事儿—浅谈密码的设计与管理
- (附源码)计算机毕业设计ssm大学生学习交友平台
- 微信小程序-画板工具实现
热门文章
- 马斯克也爱 “天才少年”!14 岁神童,年薪百万,SpaceX 史上最年轻工程师
- 用英语介绍计算机300字,关于电脑的作文300字
- SpringBooot MD5加盐加密
- 如果美工请假了,要程序员做图顶上!会是什么样的场景?经常我们都能听见程序员和设计师之间的互怼日常!
- ASP.NET中使用JObject和JArray解析Json数据 (实用、赞)
- navicat导入sql数据库文件的简单操作步骤
- 机器学习 python编程库
- 计算机数据管理的发展分5个阶段,数据管理技术的发展主要经历了哪几个阶段...
- Android 10.0 Camera2 拍照功能默认选前摄像头
- 无锁CAS/无锁队列