Python 爬虫开发知识入门基础(3)

laical1 · 2020年06月24日 · 93 次阅读

爬虫的反爬 反爬这部分是个重点,爬虫现在已经越来越难了,非常多的网站已经添加了各种反爬措施,在这里可以分为非浏览器检测、封 IP、验证码、封账号、字体反爬等。

下面主要从 IP、验证码、封账号三个方面来阐述反爬的处理手段。 反爬 / 封 IP 对于封 IP 的情况,可以分为几种情况来处理: • 首先寻找手机站点、App 站点,如果存在此类站点,反爬会相对较弱。 • 使用代理,如抓取免费代理、购买亿牛云付费代理、使用 Tor 代理、Socks 代理等。 • 在代理的基础上维护自己的代理池,防止代理浪费,保证实时可用。 反爬 / 验证码 验证码分为非常多种,如普通图形验证码、算术题验证码、滑动验证码、点触验证码、手机验证码、扫二维码等。 • 对于普通图形验证码,如果非常规整且没有变形或干扰,可以使用 OCR 识别,也可以使用机器学习、深度学习来进行模型训练,当然打码平台是最方便的方式。 • 对于算术题验证码,推荐直接使用打码平台。 • 对于滑动验证码,可以使用破解算法,也可以模拟滑动。后者的关键在于缺口的找寻,可以使用图片比对,也可以写基本的图形识别算法,也可以对接打码平台,也可以使用深度学习训练识别接口。 • 对于点触验证码,推荐使用打码平台。 • 对于手机验证码,可以使用验证码分发平台,也可以购买专门的收码设备,也可以人工验证。 • 对于扫二维码,可以人工扫码,也可以对接打码平台。

反爬 / 封账号 某些网站需要登录才能爬取,但是一个账号登录之后请求过于频繁会被封号,为了避免封号,可以采取如下措施: • 寻找手机站点或 App 站点,此种类别通常是接口形式,校验较弱。 • 寻找无登录接口,尽可能寻找⽆无需登录即可爬取的接口。 • 维护 Cookies 池,使⽤用批量账号模拟登录,使⽤时随机挑选可用 Cookies 使⽤即可 • 有些网站会检查你是不是真的浏览器访问,还是机器自动访问的。这种情况,加上 User-Agent,表明你是浏览器访问即可。有时还会检查是否带 Referer 信息还会检查你的 Referer 是否合法,一般再加上 Referer。 User-Agent 可以用亿牛云代理 IP 提供给的真实库,Referer 的来源可以伪装成百度搜索来的。 当然爬虫采集数据使用高质量的 http 代理 ,效果是最好的。

更多原创文章干货分享,请关注公众号
  • 加微信实战群请加微信(注明:实战群):gocnio
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册