我国目前并未出台专门针对网络爬虫技术的法律规范,但在司法实践中,相关判决已屡见不鲜,K哥特设了“K哥爬虫普法”专栏,本栏目通过对真实案例的分析,旨在提高广大爬虫工程师的法律意识,知晓如何合法合规利用爬虫技术,警钟长鸣,做一个守法、护法、有原则的技术人员。

前情提要

《互联网搜索引擎服务自律公约》(简称《自律公约》)系在工业和信息化部的指导下,由中国互联网协会牵头组织十二家互联网企业于2012年11月1日在北京举行签订,参与企业包括:百度、即刻搜索、盘古搜索、奇虎 360、盛大文学、搜狗、腾讯、网易、新浪、宜搜、易查无限、中搜等。该公约第七条第一款规定:遵循国际通行的行业惯例与商业规则,遵守机器人协议(robots 协议)。第八条规定:互联网所有者设置机器人协议应遵循公平、开放和促进信息自由流动的原则,限制搜索引擎抓取应有行业公认合理的正当理由,不利用机器人协议进行不正当竞争行为,积极营造鼓励创新、公平公正的良性竞争环境。

案情介绍

一审受理:2013年1月28日、二审终判:2020年7月3日,为期时长八年!

上诉人:

北京百度网讯科技有限公司(简称百度网讯公司)

百度在线网络技术(北京)有限公司(简称百度在线公司)

被上诉人:

北京奇虎科技有限公司(简称奇虎公司,360)

百度网讯公司和百度在线公司称,其相关网站均通过 robots 协议设置了访问限制,其 robots 协议采取的是“白名单”制度,即只有该文件中明确列举的搜索引擎的网络机器人才能抓取百度旗下相关网站的内容,未列举的其他搜索引擎均不能抓取。2012年8月16日,360 搜索引擎上线运营,但百度网讯公司和百度在线公司的相关网站的 robots 协议均未将 360 搜索引擎列入其“白名单”中。百度方面认为,360 搜索在未获得百度公司允许的情况下,违反业内公认的 robots 协议,抓取百度旗下百度知道、百度百科、百度贴吧等网站的内容,已经构成了不正当竞争,并向奇虎索赔1亿元

百度方面称,奇虎公司利用 360 搜索引擎等,强行抓取网民的浏览数据和信息到搜索服务器,完全无视 robots 协议,这一做法目前已经导致大量企业内网信息被泄露。2012年年底,百度工程师通过一个名为“鬼节捉鬼”的测试,证明了 360 浏览器存在私自上传“孤岛页面”等隐私内容到 360 搜索的行为。

360 方面则认为,360 搜索索引这些内容页面并不涉嫌侵犯百度的权益,实际上还为百度带来了大量的用户和流量,百度应该感谢 360。

百度公司在本案中指控奇虎公司的 360 搜索存在以下不正当竞争行为:

  1. 无视百度公司设置的 robots 协议,擅自抓取、复制百度网站相关页面并生成网页快照复制件存储于奇虎公司自身服务器中;

  2. 在明确得知百度公司拒绝其抓取百度网站内容后,仍然继续抓取、复制百度网站内容并生成网页快照复制件存储于奇虎公司自身服务器中;

  3. 在网络用户点击 360 搜索的搜索结果页中来自于百度网站的链接的标题时,直接向网络用户提供其复制存储在自身服务器上的“网页快照”等,上述行为构成不正当竞争。

奇虎公司也认为百度网讯公司、百度在线公司存在不正当竞争行为,奇虎公司提交的(2013)京方圆内经证字第00364号公证书、(2013)京方圆内经证字第06932号公证书、(2013)京方圆内经证字第11476号公证书及(2015)京方圆内经证字第00228号公证书显示,自2012年8月以来,百度网讯公司、百度在线公司一直在其相关网站的 robots 协议中排除 360 搜索引擎。百度网讯公司、百度在线公司对上述事实予以认可,但认为 robots 协议是国际通行的行业惯例和商业道德,允许和/或限制全部和/或特定搜索引擎抓取是 robots 协议的应有之义,百度 robots 协议的“白名单”制度仅允许特定的几家搜索引擎抓取,对除此之外的所有其他搜索引擎均不允许抓取,不存在不正当竞争行为。

奇虎公司提交的(2013)京方圆内经证字第05960号公证书显示,使用 360 搜索引擎搜索到百度的相关网站后,在点击访问时,会出现访问被阻断并跳转到百度搜索引擎网站的现象。奇虎公司认为百度采取的相关技术措施会导致网络用户在使用 360 搜索引擎时的用户体验度下降。百度网讯公司、百度在线公司对上述事实予以认可,但认为这是针对奇虎公司不遵守百度 robots 协议而采取的自力救济措施。

法院观点

百度网讯公司、百度在线公司通过设置 robots 协议的方式限制 360 搜索引擎对其相关网页的抓取与 robots 协议的初衷背道而驰。robots 协议的初衷是为了指引搜索引擎的网络机器人更有效的抓取对网络用户有用的信息,从而更好的促进信息共享,而百度网讯公司、百度在线公司的行为会造成网络用户通过 360 搜索引擎无法得到完整的搜索结果,人为设置了信息流动的障碍。需要强调的是,360 搜索引擎属于通用搜索引擎,而通用搜索引擎的网络机器人进入一个对公众开放的网站抓取信息通常并不会损害网站的利益,反而有利于其宣传推广。事实上,目前绝大多数网站对通用搜索引擎持开放、欢迎的态度,因为如果被搜索到,就意味着更多的网页浏览量以及由此而带来的潜在用户。也正是由于这个原因,绝大多数网站非但不会使用 robots 协议禁止通用搜索引擎抓取,反而希望能够更快的被搜索出来并展示在搜索结果中较为前列的位置,这也促成了搜索引擎竞价排名等商业模式的产生。而百度网讯公司、百度在线公司却在允许国内外主流搜索引擎抓取其网页内容的情况下,限制 360 搜索引擎抓取,其行为显然有悖于robots协议的初衷

就我国目前互联网搜索行业的发展现状来看,百度搜索引擎在市场份额上占据绝对优势,而 360 搜索所占的市场份额较小。在这种情况下,百度网讯公司、百度在线公司通过设置 robots 协议的方式限制 360 搜索引擎对其相关网站内容的抓取,会导致网络用户在使用 360 搜索引擎时无法及时获取所需信息,转而使用百度搜索引擎,这不仅会降低 360 搜索的用户满意度,损害奇虎公司的合法权益,也会在客观上增强百度搜索引擎的市场优势地位。不难想象,如果国内各主要网站都针对某一特定的搜索引擎以设置 robots 协议的方式限制其抓取,这一搜索引擎必然无法在市场上立足。事实上,包括互联网工程任务组在内的一些重要的国际组织拒绝采纳 robots 协议作为行业标准的原因就是考虑到少数行业巨头可能会利用 robots 协议本身的漏洞而将其作为垄断的工具。因此,百度网讯公司、百度在线公司以设置 robots 协议的方式限制 360 搜索引擎抓取的动机难谓正当

百度网讯公司、百度在线公司还主张其设置 robots 协议是针对奇虎公司的侵权行为而采取的自力救济措施,对此,如果网站所有者认为搜索引擎的抓取侵犯了其某项具体的民事权利,应当通过相应的法律途径寻求救济,而不应以限制互联网信息流动的方式进行所谓的自力救济,故百度网讯公司、百度在线公司的主张不能成立。

法院认为:百度在线公司、百度网讯公司在缺乏合理、正当理由的情况下,以对网络搜索引擎经营主体区别对待的方式,限制奇虎公司的 360 搜索引擎抓取其相关网站网页内容,影响该通用搜索引擎的正常运行,损害了奇虎公司的合法权益和相关消费者的利益,妨碍了正常的互联网竞争秩序,违反公平竞争原则,且违反诚实信用原则和公认的商业道德而具有不正当性,不制止不足以维护公平竞争的秩序,故构成反不正当竞争法第二条规定所指的不正当竞争行为。

根据第2668号判决:奇虎公司的搜索引擎直接将百度公司相关网页的链接更换为该网页的网页快照链接的行为明显已经超出了使用网页快照的合理范围,故对于百度公司关于奇虎公司将百度公司网站的搜索结果直接以网页快照的方式向网络用户提供的行为不当的主张予以支持。奇虎公司赔偿百度公司经济损失五十万元、合理开支二十万元。

判决情况

  • 百度网讯公司、百度在线公司立即停止涉案不正当竞争行为;

  • 百度网讯公司、百度在线公司于判决生效之日起十日内连带赔偿奇虎公司经济损失二十万元;

  • 百度网讯公司、百度在线公司于判决生效之日起三十日内在三家网站(www.360.cn,www.sina.com,www.sohu.com)首页的显著位置连续十日刊登声明,就其涉案不正当竞争行为为奇虎公司消除影响;

  • 二审案件受理费四千三百元,由百度网讯公司、百度在线公司负担;

  • 驳回奇虎公司的其他诉讼请求。

判决文书

https://wenshu.court.gov.cn/website/wenshu/181107ANFZ0BXSK4/index.html?docId=2hBPLhgZtbwA23kIOPykUj0dG01aCOIIPkk1AZnSayoXsuzZo9x8i5/dgBYosE2gc2cTGVpSTHaQan7hFsr1Zwgx9Ozn/Ie9t4Hw4I001PFz+vTgpLDCjyH0Qfy2ffn6

案例分析

robots 协议也称爬虫协议、爬虫规则等,是指网站可建立一个 robots.txt 文件来告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取,而搜索引擎则通过读取 robots.txt 文件来识别这个页面是否允许被抓取。但是,这个 robots 协议不是防火墙,也没有强制执行力,搜索引擎完全可以忽视 robots.txt 文件去抓取网页的快照 如果想单独定义搜索引擎的漫游器访问子目录时的行为,那么可以将自定的设置合并到根目录下的 robots.txt,或者使用 robots 元数据(Metadata,又称元数据)。

robots 协议并不是一个规范,而只是约定俗成的,所以并不能保证网站的隐私,例如商品上挂个“非卖品易碎勿碰”,是告诉顾客不要碰这件商品,但无法阻止顾客拿起来看的行为,未损坏也并不违法,故俗称 “君子协议”,并不具备法律效应。robots 协议的初衷并不是限制搜索引擎的网络机器人抓取信息、阻碍互联网信息流动,而是通过善意的指引使搜索引擎的网络机器人能够更有效的抓取对网络用户有用的信息,从而更好的促进信息共享。

结合本案,根据反不正当竞争法第二条第一款、第二款规定:“经营者在市场交易中,应当遵循自愿、平等、公平、诚实信用的原则,遵守公认的商业道德。本法所称的不正当竞争,是指经营者违反本法规定,损害其他经营者的合法权益,扰乱社会经济秩序的行为。”在网络不正当竞争纠纷中,百度网讯公司、百度在线公司通过信息网络实施反不正当竞争法未作出特别规定的竞争行为,足以损害奇虎公司合法权益、扰乱正常的市场经营秩序,违背公平竞争原则,且违反诚实信用原则和公认的商业道德的,可以认定为反不正当竞争法第二条规定的不正当竞争行为

robots 协议有效性的认定,在适用范围上可以大致分为两类:一类是如本案在搜索引擎范围的适用,当 robots 协议适用搜索引擎领域时,应遵守《互联网搜索引擎服务自律公约》规定的开放、平等、写作、分享的互联网精神,设置限制时应具有行业公认合理正当的理由,否则 robots 协议并不当然有效;另一类为在非搜索引擎范围的适用,此时《互联网搜索引擎服务自律公约》则不宜再适用于整个互联网行业,对于常规爬虫行为,在法律上并未规定为违法行为或禁止使用的行为。

如今,在中国国内互联网行业,正规的大型企业也都将 robots 协议当做一项行业标准,国内使用 robots 协议最典型的案例,就是淘宝网拒绝百度搜索(2008年9月8日)、京东商城拒绝一淘网搜索(2011年10月25日),相关司法案例也屡见不鲜:百度诉 360 案、腾讯诉字节跳动案、大众点评诉百度案等等。不过,绝大多数中小网站都需要依靠搜索引擎来增加流量,因此通常并不排斥搜索引擎,也很少使用 robots 协议。

爬虫工程师们也需要注意的一点是,基于现行的惯例,未被 robots 协议排除的数据属于互联网上的公开数据,任何人都有权访问和收集。因而,遵循 robots 协议的前提下公开爬取数据原则上既不会侵犯信息提供者的权利,也不会构成不正当竞争。反之,如果违反 robots 协议,强行爬取他人的数据,则可能被认定为违反诚实信用和商业道德,构成不正当竞争。

【K哥爬虫普法】百度、360八年恩怨情仇,robots 协议之战终落幕的更多相关文章

  1. [python爬虫]Requests-BeautifulSoup-Re库方案--robots协议与Requests库实战

    [根据北京理工大学嵩天老师“Python网络爬虫与信息提取”慕课课程编写 慕课链接:https://www.icourse163.org/learn/BIT-1001870001?tid=100223 ...

  2. python requests库网页爬取小实例:百度/360搜索关键词提交

    百度/360搜索关键词提交全代码: #百度/360搜索关键词提交import requestskeyword='Python'try: #百度关键字 # kv={'wd':keyword} #360关 ...

  3. Python爬虫教程-05-python爬虫实现百度翻译

    使用python爬虫实现百度翻译功能 python爬虫实现百度翻译: python解释器[模拟浏览器],发送[post请求],传入待[翻译的内容]作为参数,获取[百度翻译的结果] 通过开发者工具,获取 ...

  4. python爬虫获取百度图片(没有精华,只为娱乐)

    python3.7,爬虫技术,获取百度图片资源,msg为查询内容,cnt为查询的页数,大家快点来爬起来.注:现在只能爬取到百度的小图片,以后有大图片的方法,我会陆续发贴. #!/usr/bin/env ...

  5. 《精通Python网络爬虫》|百度网盘免费下载|Python爬虫实战

    <精通Python网络爬虫>|百度网盘免费下载|Python爬虫实战 提取码:7wr5 内容简介 为什么写这本书 网络爬虫其实很早就出现了,最开始网络爬虫主要应用在各种搜索引擎中.在搜索引 ...

  6. Python爬虫_百度贴吧(title、url、image_url)

    本爬虫以百度贴吧为例,爬取某个贴吧的[所有发言]以及对应发言详情中的[图片链接] 涉及: request 发送请求获取响应 html 取消注释 通过xpath提取数据 数据保存 思路: 由于各贴吧发言 ...

  7. [Python3网络爬虫开发实战] 3.1.4-分析Robots协议

    利用urllib的robotparser模块,我们可以实现网站Robots协议的分析.本节中,我们来简单了解一下该模块的用法. 1. Robots协议 Robots协议也称作爬虫协议.机器人协议,它的 ...

  8. Robots协议(爬虫协议、机器人协议)

    Robots协议(也称为爬虫协议.机器人协议等)的全称是“网络爬虫排除标准”(Robots Exclusion Protocol),网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓 ...

  9. Python 爬虫-Robots协议

    2017-07-25 21:08:16 一.网络爬虫的规模 二.网络爬虫的限制 • 来源审查:判断User‐Agent进行限制 检查来访HTTP协议头的User‐Agent域,只响应浏览器或友好爬虫的 ...

  10. 爬虫基础 - Robots协议

    Robots协议 指定一个robots.txt文件,告诉爬虫引擎怎么爬取 https://www.taobao.com/robots.txt User-agent: Baiduspider Allow ...

随机推荐

  1. instanceof运算符的实质:Java继承链与JavaScript原型链

    Java instanceof instanceof 严格来说是Java中的一个双目运算符,用来测试一个对象是否为一个类的实例 boolean result = obj instanceof Clas ...

  2. Solon 在 jdk 各版本反射权限问题的处理指南

    jdk17 如果出现反射权限问题.可添加jvm参数:--add-opens (取消了 illegal-access 参数) #示例: java --add-opens java.base/java.l ...

  3. Python异步编程之yield from

    yield from 简介 yield from 是Python3.3 后新加的语言结构,可用于简化yield表达式的使用. yield from 简单示例: >>> def gen ...

  4. C# 32位程序申请大内存

    VS2015 项目-->属性-->生成事件 在"后期生成事件命令行"中输入: cd /d $(DevEnvDir) cd.. cd.. cd VC\bin editbi ...

  5. BZOJ 3450 - Tyvj1952 Easy (期望DP)

    描述 某一天 WJMZBMR 在打 osu~~~ 但是他太弱逼了,有些地方完全靠运气:( 我们来简化一下这个游戏的规则: 有 \(n(n\le 300000)\) 次点击要做,成功了就是 o,失败了就 ...

  6. A*(A star)搜索总结

    定义 先复制一则定义 A*算法在人工智能中是一种典型的启发式搜索算法 启发中的估价是用估价函数表示的: h(n)=f(n)+g(n) 其中f(n)是节点n的估价函数 g(n)表示实际状态空间中从初始节 ...

  7. POJ 1985.Cow Marathon(DFS求树的直径模板题)

    两次BFS/DFS求树的直径 我们可以先从任意一点开始DFS,记录下当前点所能到达的最远距离,这个点为P. 在从P开始DFS记录下所能达到的最远点的距离,这个点为Q. \(P , Q\)就是直径的端点 ...

  8. 领域驱动设计(DDD)实践之路(四):领域驱动在微服务设计中的应用

    这是"领域驱动设计实践之路"系列的第四篇文章,从单体架构的弊端引入微服务,结合领域驱动的概念介绍了如何做微服务划分.设计领域模型并展示了整体的微服务化的系统架构设计.结合分层架构. ...

  9. 8 Englishi 词根

    测一测 physical obesity skinny sliny stout skeleton external appearance recede unprecededented feinge e ...

  10. VS2019 16.8下载安装

    昨天,想升级到 net5版本,发现在vs2019上始终发现不了它,考虑好几个小时,终于狠下心,把vs2019卸载了,重新装一次.耗费了一个晚上,先将安装过程写下来,以供参考 第一步, 到 微软官网 h ...