一文谈谈我对Python爬虫的理解(3)

发表于:2021-10-20 09:51

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:howie6879    来源:思否

#
Python
  如何进阶
  不要以为写好一个爬虫程序就可以出师了,此时还有更多的问题在前面等着你,你要含情脉脉地看着你的爬虫程序,问自己三个问题:
  ·爬虫抓取数据后是正当用途么?
  ·爬虫会把目标网站干掉么?
  ·爬虫会被反爬虫干掉么?
  前两个关于人性的问题在此不做过多叙述,因此跳过,但你们如果作为爬虫工程师的话,切不可跳过。

  会被反爬虫干掉么?
  最后关于反爬虫的问题才是你爬虫程序强壮与否的关键因素,什么是反爬虫?
  当越来越多的爬虫在互联网上横冲直撞后,网页资源维护者为了防止自身数据被抓取,开始进行一系列的措施来使得自身数据不易被别的程序爬取,这些措施就是反爬虫。
  比如检测IP访问频率、资源访问速度、链接是否带有关键参数、验证码检测机器人、ajax混淆、js加密等等。
  对于目前市场上的反爬虫,爬虫工程师常有的反反爬虫方案是下面这样的:
  ·不断试探目标底线,试出单IP下最优的访问频率
  ·构建自己的IP代理池
  ·维护一份自己常用的UA库
  ·针对目标网页的Cookie池
  ·需要JS渲染的网页使用无头浏览器进行代码渲染再抓取
  ·一套破解验证码程序
  ·扎实的JS知识来破解混淆函数
  爬虫工程师的进阶之路其实就是不断反反爬虫,可谓艰辛,但换个角度想也是乐趣所在~

  关于框架
  爬虫有自己的编写流程和标准,有了标准,自然就有了框架,像Python这种生态强大的语言,框架自然是多不胜数,目前世面上用的比较多的有:
  ·Scrapy
  ·PySpider
  ·Portia
  这里不过多介绍,框架只是工具,是一种提升效率的方式,看你选择。

  说明
  任何事物都有两面性,爬虫自然也不例外,因此我送诸位一张图,关键时刻好好想想~

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号