天天看点

爬虫应用场景分析

作者:VendyZ

相信大家在春节的时候都有过抢火车票的经历,对一些抢票软件一定不会感到陌生。今天我们就来从技术的角度,来看看抢票软件背后的东西——爬虫。通俗点说,爬虫就是模拟人的行为去各个网站溜达,并把看到的信息背回来的探测机器。下面我们就一起来分析一下爬虫应用场景的优劣~

一:出行行业

最广泛使用的履带是在旅游业。为什么?以12306为例。作为中国唯一出售火车票的官方网站,如果你想坐火车,你必须在这个网站上买票。因此,它催生了很多抢票的神奇工具。例如,知行火车票就是利用爬虫技术不断刷新12306网站上的火车票。一旦你找到了一张票,你就可以立即拿走它,让你买单。当然,好处是非常明显的。只要我们知道如何使用手指,我们就可以在家里抢票,但12306网站本身并不欢迎这种爬行行为。毕竟,高频率的网页浏览和点击会导致网站崩溃,这对那些抢不到票的人来说是不公平的。因此,爬行技术对旅游业来说有优势也有劣势。

二:社交平台

社交平台是爬行动物经常光顾的地方之一,尤其是微博。爬虫可以获取一个人的微博列表、微博状态、索引等等。有些人可能会问,这些信息有什么用?想象一下,如果我可以随意指挥一群机器人,打开某人的微博,点击某个项目,然后疯狂地关注它,点赞或留言。这是标准的僵尸粉工作流程。僵尸粉丝的数量、点赞和评论等都可以通过这套骚操作传到某个微博账号。还有用爬行动物制作的僵尸粉在微博上抢红包等操作。

三:电商平台

相信大家对所谓的“比价平台”、“聚合电商”、“返利平台”都很熟悉。事实上,他们的原理也是爬虫技术的应用。例如,如果你搜索一个产品,这种聚合平台会自动将各种电子商务公司的产品放在你面前供你选择。有淘宝、京东和唯品会苏宁。这是爬行动物的功劳。他们去淘宝,获取某一产品的图片和价格,并在自己的平台上展示。这一原理与搜索引擎的工作原理相似,只是它们显示的不是网页而是商品。但放在一起比较价格对消费者来说可能是一件好事,但许多电子商务平台并不这么认为。当然,电子商务还有另一种对抗爬虫的方式,那就是“网络应用防火墙”。这里不讨论反爬虫技术。

四:搜索引擎

众所周知,搜索引擎决定哪个页面排名第一。主要指标之一是查看哪些搜索结果被更频繁地点击。一种黑色SEO方法是使用爬虫不断刷页面点击流量。例如,如果你搜索一个特定的“关键字”,然后拼命地点击结果中的链接,这个网站在搜索引擎中的权重自然会上升。但这种做法是错误的。这是爬虫被用来利用的缺点。任何搜索引擎都不能允许外人篡改自己的搜索结果,否则它将失去宣传。所以百度搜索引擎会不定期地调整算法,以对抗黑SEO行为。网站一旦被发现,就会受到“断电”,得不偿失。总的来说,爬行技术有优点也有缺点。这取决于你如何使用它。

分析爬虫应用场景的利弊,我们可以发现爬虫技术更像是一把双刃剑,技术本身是无罪的主要看使用爬虫技术的人如何运用。当然爬取网络上的公开信息还是不算违法的,如果你想利用爬虫技术窃取隐私信息来牟利则是万万不可取的。总之,大家一定要在法律允许的范围使用爬虫技术。

#反爬虫策略

有爬虫就有可能会有反爬虫,有些网站的数据比较敏感,不想让你获取,这时该公司就会采取各种反爬措施。

一、封锁ip

这是比较简单粗暴的方式,查询单位时间内请求次数过多的账号,然后查到账号的电脑ip后,直接屏蔽这台电脑的访问,但是误伤率也比较高,要谨慎使用。

二、把敏感信息用图片替换

电商平台的商品价格信息是比较敏感的,有些平台会把价格型号信息用图片来代替展示,这样确实能防住爬虫,但是随着机器学习的发展,现在识别图片的技术越来越强,慢慢的这个处理办法的效果也不是那么好了。

三、网页所见非所得

通过一定的算法规则,把虚假信息和真正信息做下映射,在网页代码里面存的是虚假信息,但是显示的时候,利用算法规则和ttf字体文件映射出真实信息。

四、人工输入动态码

有些网站为了避免被爬,在你访问页面之前,比如输入一个验证身份且有有效期的动态码。

五、法律途径

爬虫违法吗?现在的爬虫在法律层面还是有点擦边球,爬虫的官司现在还是有的,通过法律途径也算是一种保护数据的方式

爬虫的合法性:

俗话说:“爬虫爬得欢,监狱要坐穿;数据玩的溜,牢饭吃个够”。

网络爬虫相关法律规范现况:

在法律层次,大陆有着相关规定,当网络爬虫侵犯了个人隐私时,司法实践中常用刑法第二百五十三条之一侵犯公民个人信息罪对其进行制裁,而当其单纯地对网络数据信息侵害时,则通常适用刑法第二百八十五条及第二百八十六条对其进行规制。但这其中也存在着一定的缺陷,由于互联网新型技术发展过快,立法工作很难做到与时俱进,故已有的法律法规存在滞后性、保守性等特点;另外,网络爬虫应用本身就有着难以判断犯罪与否的特点,其行为在司法实践中并没有明确的区分标准,导致法官在面对此类案件时可能会束手无策。

爬虫是否违法视情况而定。

合法的爬虫:

网络爬虫的合法应用需要注意以下几点:1、要求网络爬虫在爬取公开的数据时,没有标识不可爬取;2、爬虫在网上爬取数据不能影响他人服务器的正常运行;3、爬取数据时不影响他人业务正常进行。网络爬虫的正常使用并不会触犯法律的红线,而且这一技术具有较强的实用性,打破了信息壁垒,给网络用户提供巨大的信息获取便利,给商业机构带来了巨大的商业利益和发展机遇。合法使用网络爬虫利大于弊。

不合法的爬虫:

1、恶意爬取用户个人数据——可能侵犯的公民的个人隐私。大陆网络安全法、刑法都对保护公民个人信息做出了相关规定,当网络爬虫恶意爬取个人信息时,司法实践中常适用《网络安全法》第四十一条、第四十四条以及《刑法》第二八五十三条之一的相关规定对犯罪行为作出判决,可能判处侵犯公民个人信息罪。

(《网络安全法》第四十一条收集、使用个人信息,应当遵循合法、正当、必要的原则,公开收集、使用规则,明示收集、使用信息的目的、方式和范围,并经被收集者同意。

网络运营者不得收集与其提供的服务无关的个人信息,不得违反法律、行政法规的规定和双方的约定收集、使用个人信息,并应当依照法律、行政法规的规定和与用户的约定,处理其保存的个人信息。

《网络安全法》第四十四条任何个人和组织不得窃取或者以其他非法方式获取个人信息。

《刑法》第二百五十三条 之一【侵犯公民个人信息罪】违反国家有关规定,向他人出售或者提供公民个人信息,情节严重的,处三年以下有期徒刑或者拘役,并处或者单处罚金;情节特别严重的,处三年以上七年以下有期徒刑,并处罚金。

违反国家有关规定,将在履行职责或者提供服务过程中获得的公民个人信息,出售或者提供给他人的,依照前款的规定从重处罚。

窃取或者以其他方法非法获取公民个人信息的,依照第一款的规定处罚。

单位犯前三款罪的,对单位判处罚金,并对其直接负责的主管人员和其他直接责任人员,依照各该款的规定处罚。)

2、页面上标明不得爬取、未授权爬取——明知没有授权而故意避开或强行突破网站或App的反爬虫技术设置进行的爬取行为,属于“未经授权”访问或获取数据,行为人应依法承担相应责任包括刑事责任。根据大陆刑法第二百八十五条和第二百八十六条规定,突破技术屏障入侵他人计算机系统、获取系统内的数据,可能涉及的罪名包括非法侵入计算机信息系统罪、非法获取计算机信息系统数据罪、破坏计算机信息系统罪。

(《刑法》第二百八十五条【非法侵入计算机信息系统罪】违反国家规定,侵入国家事务、国防建设、尖端科学技术领域的计算机信息系统的,处三年以下有期徒刑或者拘役。

【非法获取计算机信息系统数据、非法控制计算机信息系统罪】违反国家规定,侵入前款规定以外的计算机信息系统或者采用其他技术手段,获取该计算机信息系统中存储、处理或者传输的数据,或者对该计算机信息系统实施非法控制,情节严重的,处三年以下有期徒刑或者拘役,并处或者单处罚金;情节特别严重的,处三年以上七年以下有期徒刑,并处罚金。

【提供侵入、非法控制计算机信息系统程序、工具罪】提供专门用于侵入、非法控制计算机信息系统的程序、工具,或者明知他人实施侵入、非法控制计算机信息系统的违法犯罪行为而为其提供程序、工具,情节严重的,依照前款的规定处罚。

单位犯前三款罪的,对单位判处罚金,并对其直接负责的主管人员和其他直接责任人员,依照各该款的规定处罚。

《刑法》第二百八十六条【破坏计算机信息系统罪】违反国家规定,对计算机信息系统功能进行删除、修改、增加、干扰,造成计算机信息系统不能正常运行,后果严重的,处五年以下有期徒刑或者拘役;后果特别严重的,处五年以上有期徒刑。

违反国家规定,对计算机信息系统中存储、处理或者传输的数据和应用程序进行删除、修改、增加的操作,后果严重的,依照前款的规定处罚。

故意制作、传播计算机病毒等破坏性程序,影响计算机系统正常运行,后果严重的,依照第一款的规定处罚。)

3、影响业务、影响服务器、爬取部分网站、APP数据超过指定数量——法律对于网络爬虫爬取信息的数量、访问量以及影响网站正常运行的网络爬虫也有着明确的规定,在出现上述情况时,根据《数据安全管理办法》第十六条对其进行规制。(《数据安全管理办法》第十六条是国家首次针对爬虫进行的明确规制。)

(《数据安全管理办法》第十六条利用自动化手段访问收集网站数据,不得妨碍网站正常运行;此类行为严重影响网站运行,如自动化访问收集流量超过网站日均流量三分之一,网站要求停止自动化访问收集时,应当停止。)

此外:还有↓

明文规定不得爬取

在域名后加上/robots.txt查看

类似DDOS攻击的问题

disallow就是不允许爬虫,allow允许。

但是并非所有网站都会有robots.txt来提供是否允许爬虫的信息,这时候就看自己了

我们能爬的数据并不代表合法,需要谨慎判断。

提示:部分爬虫虽然违法,但公司、或企业不会直接报警。会采用反爬的手段,严重后才会报警。

robots协议的局限性:

在法律之外,有着robots 协议这一行业内的技术规范,但是robots 协议并非法律层面上的协议,也非法律意义上的合同,而是一种没有经过标准化组织备案的非官方协议。这一协议没有强制力,仅能起到提醒的作用,无法对网络爬虫存在的违规行为进行监督和阻拦,故这一协议的实施需要爬虫使用方自觉遵守。同时,这一协议的涉及的内容并不完善,无法对网络爬虫使用中的各种问题都进行合理有效的规制,实践中也存在企业使用网络爬虫并未违反协议内容但违反了法律的情况。可见,仅依靠robots协议很难保证网络爬虫使用的合法化。

解决措施:

需要采取一定的措施来保持网络爬虫技术的合法性。首先,应进一步限缩网络爬虫的使用范围,比如强制要求网络爬虫只能爬取互联网上公开的信息、网络爬虫的使用不得影响原网站的正常运行、网络爬虫爬取到的个人信息未经同意不得公开、在爬取信息前明确网络爬虫的目的等。网络爬虫这一技术是一把双刃剑,如何使用就是决定其价值的关键,对网络爬虫技术进行一定的合法性限定就是一条可行之路。详见论文↓

(详见论文《网络爬虫的演变及其合法性限定》:网络爬虫要体现并保持技术的中立性,则需要在法律上进行合法性限定,也即划定爬虫技术合法使用的边界。我们认为,可以从以下三个方面对网络爬虫进行合法性限定。其一,就爬取对象来说,网络爬虫应是针对公开数据的爬取;其二,就数据爬取所采取的手段或方法而言,网络爬虫不应具有侵入性。是否具有侵入性应当从技术本身是否具有侵入性和数据爬取行为是否遵守爬虫协议与合同约定两个方面来判定。其三,从网络爬虫技术的开发、利用主体的角度,应当进行“目的正当性”限定。这三个限定条件是网络爬虫合法性判断的充要条件,即只有满足这三个条件的数据爬取行为才是合法的。反之,不满足其中任何一个条件,便可认定数据爬取行为的非法性。……)

其次,应加强立法,促进《网络安全法》《刑法》等法律中关于互联网时代个人隐私信息保护以及网络中数据归属方面的立法;还可以设立专门的办公室、专家组对网络爬虫技术立法进行实时的调整,紧随科技发展。针对上述所说的科技进步较快,立法工作很难做到与时俱进,已有的法律法规存在滞后性、保守性等特点,采用专家组常更新、常解释法条法规,针对典型案例进行公示、集体学习等方法可以缓解上述问题。

再者,应建立完善的合理的举报机制,鼓励举报违法的爬取行为。增设多条监督举报途径,比如:可以开设专门网站、办公室、信箱等。在中国当前的国情下,可以开设专门的技术部门对网络上的爬虫进行特别监管,并与检察院挂钩,相辅相成,技术人员发现并处理网络上的非法爬虫,检察院则对部门本身进行监督,防止部门内部变质。

此外,还可以对使用网络爬虫技术的个人和企业进行实名认证,无认证则不可使用,一旦发现,必将严惩不贷;或者定期组织司法、执法人员对相关法律法规进行学习等。