浅谈爬虫及绕过网站反爬取机制
爬虫是什么呢,简单而片面的说,爬虫就是由计算机自动与服务器交互获取数据的工具。爬虫的最基本就是get一个网页的源代码数据,如果更深入一些,就会出现和网页进行POST交互,获取服务器接收POST请求后返回的数据。一句话,爬虫用来自动获取源数据,至于更多的数据处理等等是后续的工作,这篇文章主要想谈谈爬虫获取数据的这一部分。爬虫请注意网站的Robot.txt文件,不要让爬虫违法,也不要让爬虫对网站造成伤害。 反爬及反反爬概念的不恰当举例 基于很多原因(如服务器资源,保护数据等),很多网站是限制了爬虫效果的。 考虑一下,由人来充当爬虫的角色,我们怎么获取网页源代码?最常用的当然是右键源代码。 网站屏蔽了右键,怎么办? 拿出我们做爬虫中最有用的东西 F12(欢迎讨论) 同时按下F12就可以打开了(滑稽) 源代码出来了!! 在把人当作爬虫的情况下,屏蔽右键就是反爬取策略,F12就是反反爬取的方式。 讲讲正式的反爬取策略 事实上,在写爬虫的过程中一定出现过没有返回数据的情况,这种时候也许是服务器限制了UA头(user-agent),这就是一种很基本的反爬取,只要发送请求的时候加上UA头就可以了…是不是很简单? 其实一股脑把需要不需要的Request Headers都加上也是一个简单粗暴的办法…… 有没有发现网站的验证码也是一个反爬取策略呢?为了让网站的用户能是真人,验证码真是做了很大的贡献