分布式爬虫基本原理 -《狗嗨默示录》-

Posted 李·狗嗨

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分布式爬虫基本原理 -《狗嗨默示录》-相关的知识,希望对你有一定的参考价值。

分布式爬虫基本原理:

  • 找一台高性能服务器,用于redis队列的维护以及数据的存储。
  • 扩展scrapy程序,让其通过服务器的redis来获取start_urls,并改写pipeline里数据存储部分,把存储地址改为服务器地址。
  • 在服务器上写一些生成url的脚本,并定期执行。

常见的防抓取屏蔽的方法:

  • 设置download_delay,这个方法基本上属于万能的,理论上只要你的delay足够长,网站服务器都没办法判断你是正常浏览还是爬虫。但它带来的副作用也是显然的:大量降低爬取效率。因此这个我们可能需要进行多次测试来得到一个合适的值。有时候download_delay可以设为一个范围随机值。
  • 随机生成User-agent:更改User-agent能够防止一些403或者400的错误,基本上属于每个爬虫都会写的。这里我们可以重写scrapy 里的middleware,让程序每次请求都随机获取一个User-agent,增大隐蔽性。
  • 设置代理IP池:网上有很多免费或收费的代理池,可以借由他们作为中介来爬。一个问题是速度不能保证,第二个问题是,这些代理很多可能本来就没办法用。因此如果要用这个方法,比较靠谱的做法是先用程序筛选一些好用的代理,再在这些代理里面去随机、或者顺序访问。
  • 设置好header里面的domian和host,有些网站,比如雪球网会根据这两项来判断请求来源,因此也是要注意的地方。

以上是关于分布式爬虫基本原理 -《狗嗨默示录》-的主要内容,如果未能解决你的问题,请参考以下文章

GPS基本原理及其Matlab仿真的目录

sdram基本原理

Chatbot入门1:智能对话引擎基本原理

ABtest 基本原理与框架一

管理的基本原理都有哪些

WINDOWS工作的基本原理