发布时间:2020-2-16 分类: 电商动态
什么是爬虫?简单和片面,爬虫是一种自动与服务器交换数据以获取数据的工具。最基本的爬虫是获取网页的源代码数据。如果更深,它将与网页交互以获得服务器在收到POST请求后返回的数据。总之,爬虫用于自动获取源数据。至于更多的数据处理等,这是一项后续工作。本文主要想谈谈这部分爬虫的数据采集。爬虫应该注意代购源码网站上的Robot.txt文件,不要让爬虫违法,也不要让爬虫损坏代购源码网站。
反爬及反反爬概念的不恰当举例
由于许多原因(例如服务器资源,保护数据等),许多代购源码网站限制了爬行效果。
考虑一下,让我们扮演一个爬虫的角色,我们如何获得页面的源代码?最常见的一个当然是正确的源代码。
该代购源码网站已阻止右键。我该怎么办?
拿出我们作为爬行动物F12做的最有用的东西(欢迎讨论)
同时按F12打开(搞笑)
源代码已经出来!!
在使用人作为爬行动物的情况下,屏蔽右按钮是一种反爬行策略,而F12是爬行的方式。
讲讲正式的反爬取策略
实际上,在编写爬虫的过程中必须没有返回数据。在这种情况下,服务器可以限制UA头(用户代理)。只要请求被发送,这是一个非常基本的反爬行。加UA标题可以…这很简单吗?
实际上,添加不需要的请求标头也是一种简单而粗鲁的方式。 ……
您是否发现该代购源码网站的验证码也是一种反爬行策略?为了使代购源码网站的用户真实,验证码做出了很大的贡献。使用验证码,将显示验证码标识。
说到这里,我不知道是否首先有验证码识别或图片识别?
现在,简单的验证码很容易识别。互联网上有太多的教程,包括一些先进的去噪,二进制,分段,重组和其他概念。然而,代购源码网站的人机识别变得越来越可怕,例如:
简要说一下二进制值去噪的概念
将有验证码
成为
是二进制值,也就是图片本身只变成两个音调,例子很简单,通过python PIL库
Image.convert( '1')
可以实现,但如果图片变得更复杂,还是要考虑一下,比如
如果直接使用简单方法,它将变为
考虑一下如何识别这些验证码。在这种情况下,去噪是有用的。根据验证码本身的特点,您可以计算验证码的背景颜色和字体外的RGB值等,并将这些值转换为一个。颜色,留下字体。示例代码如下,颜色变化可以
对于范围内的x(0,image.size [0]):
对于范围内的y(0,image.size [1]):
打印arr2 [x] [y]
如果arr [x] [y] .tolist()==base:
编曲[X] [Y]=0
Elif arr [x] [y] .tolist()[0]在范围(200,256)和arr [x] [y] .tolist()[1]范围(200,256)和arr [x] [y] .tolist ()[2]范围(200,256):
编曲[X] [Y]=0
Elif arr [x] [y] .tolist()==[0,0,0]:
编曲[X] [Y]=0
否则为:
编曲[X] [Y]=255
Arr是通过numpy获得的。根据图片RGB的矩阵,读者可以尝试改进代码并进行实验。
经过仔细处理后,图像可以更改为
识别率仍然很高。
在验证码的开发中,它仍然是清晰的数字字母,简单的加法,减法,乘法和除法,互联网上有可用的轮子,一些困难的数字字母汉字,你也可以制作自己的轮子(如上面) ),但更多的事情已经足够写一个人工智能… … (有一项工作是识别验证码…)
添加一些提示:一些代购源码网站在PC端有验证码,而且移动端没有…
下一个话题!
一种比较常见的反爬行策略是基于IP的策略。通常,会在很短的时间内阻止过多的访问。这很简单。可以限制访问频率或添加IP代理池。当然,分布式。还…
IP代理池 - >向左转,向右转到百度,有很多代理代购源码网站,虽然没有很多免费的,但毕竟。
还有一个异步数据可以计为反爬行策略。随着爬虫的逐渐深入(显然是代购源码网站的新一代!),异步加载是一个肯定会遇到的问题,解决方案仍然是F12。例如,不希望被命名的网易云音乐代购源码网站就是一个例子。打开源代码后,尝试搜索评论
数据怎么样?!这是JS和Ajax兴起后异步加载的特性。但是打开F12,切换到NetWork选项卡,刷新页面,仔细看,没有秘密。
哦,是的。如果您正在收听歌曲,请点击此处下载…
对于代购源码网站结构的科学,请自觉抵制盗版,保护版权,保护原有的利益。
如果你说这个代购源码网站限制你死亡,我们该怎么办?我们有最后一个,强大而无敌的组合:selenium + PhantomJs
这对非常强大,可以完美地模拟浏览器的行为。具体用法是百度。不推荐。这非常麻烦。它仅用作流行科学。
总结
本文重点介绍一些常见的反爬行动物策略(主要是我遇到过(耸肩))。主要包括HTTP请求头,验证码识别,IP代理池,异步加载,介绍一些简单的方法(太难了!),主要是Python。我希望向您介绍这条路的起点。
« U-Mail解释了如何构建系统化的电子邮件营销解决方案 | 前端即将到来! 2017年12月,超实用的前端干货收藏! »