上篇写道,一审法院将社交平台数据以是否设置访问权限分为"公开数据"与"非公开数据"后,对被告Y公司抓取的数据类型进行评议,结论是Y公司抓取了"非公开数据"且不能合理解释、举证其抓取非公开数据行为的正当性。 随后,一审法院对Y公司到底是用何种手段抓取进行评议。 一审争议焦点:数据抓取方式 W公司的主张 W公司认为Y公司是用非法手段获取数据,即以直接攻击微博平台服务器的方式抓取后端数据,而非网络爬虫技术。 第一,未经授权抓取。Y公司不是微博后端数据的授权使用方。 第二,非搜索引擎类爬虫。Y公司自认了这一点。 第三,设置访问权限的页面不可能通过网络爬虫技术抓取。 网页懒加载、查看更多、翻页等功能,需要微博用户访问、操作才能显示内容,且过程中网页地址不会发生变化,而是根据用户操作、不断调取后端数据并呈现在前端。 网络爬虫获取的是url地址对应的初始页面,不包含上述内容。Y公司展示该等内容说明其抓取了后端数据,抓取方式不可能使用网络爬虫技术。 第四,W公司针对微博平台前端和后端数据都设置了技术保护措施,包括"登录机制"及"反抓站技术"。 其中,"反抓站技术"是指"当对微博平台服务器进行频繁的、不正常的操作和访问时,将被服务器识别为非法行为并拒绝其虚假操作所发出的请求"。W公司提出,如果Y公司使用网络爬虫技术,抓取这种量级的数据必然会受到反抓站技术反制;如果没受到反制,要么是使用了其他手段,要么是破坏或者绕开这些技术措施。W公司专家辅助人对Y公司可以采用的三种技术手段进行说明: 第一种,受限于登陆机制和反抓站技术的限制,为实现YJ系统采集数亿条数据及实时性,需要伪装成大量微博用户并模拟用户行为。 第二种,伪装成微博客户端,即破解了微博产品密钥,直接向微博平台服务器调取后端数据。但这种方式本身仍然受到反抓站技术限制,不可能无限调用,更不能调用「已经删除」或者「被用户设置为不展示」的数据。 第三种,直接攻击微博平台服务器——这种方式可以实时、无限地调用平台后端数据,可以实现抓取「已经删除」或者「被用户设置为不展示」的数据。 这三种方式均具有不正当性,结合YJ系统展示情形,W公司认为第三种是最有可能采用的方式。 Y公司的主张 Y公司否认自己采用非法手段抓取数据,称自己是根据用户请求、使用网络爬虫技术,对平台前端数据进行搜索和抓取,而且过程中没发现微博对这部分数据采取了限制或技术保护措施。 需要注意的是,W公司定义的"前端数据"是指用户可以可视化地看到或者直接识别出的内容。Y公司定义的"前端数据"包括网页源代码。Y公司专家辅助人对YJ系统的操作流程进行说明:用户在搜索框输入关键词,选择微博平台并添加监测后,YJ系统根据关键词用网络爬虫到微博平台采集数据并缓存到用户账号项下。 当用户刷新搜索、发出新请求时,网络爬虫会随之不断地向微博平台服务器发出请求,从而实现数据更新。 如果用户没有刷新搜索,但是设置关键词后还是停留在页面,YJ系统就会自动识别为用户正在使用产品,网络爬虫也还是会继续向微博平台服务器发出请求,从而实现数据更新。 前述网络爬虫非搜索引擎类爬虫,但技术原理相同;只要符合HTTP协议和HTML数据规范的网络爬虫都可以通过访问微博平台网页访问平台服务器。 关于网络爬虫技术如何操作等内容,Y公司没有提交证据。 一审法院评议 一审法院对Y公司无法自圆其说之处的解析已在上篇写道,此处不再重复。简单总结,就是在W公司专家辅助人已从技术层面对网络爬虫无法实现用户行为触发后才能展示的结果进行合理解释的情况下,Y公司未就此做进一步回应或者提交相反证据,其所称的使用网络爬虫技术抓取数据缺乏事实证明,无法得到法院支持。 二审新增争议焦点:数据接口 上诉时,Y公司提出曾在2011年获得W公司提供的五个数据接口,可通过数据接口合法获取数据。 这个说法推翻了它在一审期间的陈述,一审期间,Y公司明确自己是通过网络爬虫技术抓取数据,并在法院询问是否有其他方式时,明确否认。 二审法院对Y公司上诉时提交的证据进行审查并评议如下: 第一,关于国新办工作人员、W公司工作人员和Y公司工作人员的沟通内容。 Y公司主张2011年时国新办工作人员、W公司工作人员和Y公司工作人员,曾就YJ系统使用新浪微博数据的问题进行沟通,并且提供Y公司员工之间的往来邮件作为证据。 但是这些邮件都是Y公司员工之间转发的邮件,法院认为 转发邮件时,被转发的内容可以被修改 ,因此要求Y公司提供原始邮件,但是Y公司既没有提供原始邮件,也没有做出任何合理解释。 第二,W公司、Y公司工作人员的沟通内容。 Y公司提供了2017年10-11月期间,其工作人员与W公司工作人员关于"微博-Y数据业务合作问题"的往来邮件,法院认为其为孤证,既没有关于合作事项前因后果的相关证据,也没有详细的合同文本予以确认。 法院进一步指出,邮件本身的内容没有明确YJ系统是否可以"未经授权使用新浪微博的高权限数据", 反而证明了W公司非常明确地向Y公司提出"将微博数据商业化提供给政务领域的客户"不属于许可使用的范围 。 第三, 五个接口至今可以登陆的证据。 Y公司还提交了五个接口账号至今可以登录的证据,但不能证明以下内容: 五个接口账号是否可以下载数据 可以获取数据的权限大小和范围 上述接口的提供方式、目的以及是否与YJ系统存在关联。 补充一点,W公司指出这些接口返回的数据极为有限,返回数据不超过20条,明显不可能达到YJ系统的效果。综上,Y公司主张YJ系统可以通过数据接口合法获取微博数据的意见缺乏事实依据,法院不予支持。 二审法院对"网络爬虫抓取"进行评议 对于Y公司一直主张的自己是使用网络爬虫技术获取数据的说法,一审判决指出其存在无法自圆其说、矛盾之处。Y公司在上诉时提交证据对一审判决提出的问题作出解释:关于可以显示"已删除微博"的原因,解释为通过不同时间点收集微博信息、加以比对,可以判断该微博已删除。 关于网络爬虫具体采用何种方式抓取大量信息,解释为在未登陆状态下,通过网络爬虫技术对某一关键词不停抓取,可以获得足够的信息。 关于为何可以显示精确到秒的发布时间,解释为通过获取网页源代码、进行时间戳编译的方法,可查询到精确到秒的发布时间。 二审法院认为上述解释不能成立: 第一,关于通过比对识别"已删除微博"的解释。 法院指出,进行比对,需要用户开始使用(YJ系统)一段时间后、收集不同时间节点的微博信息才能实现。 Y公司在一审时,声称只有在用户发出指令后,YJ系统才开始收集微博数据,而 在案证据显示 ,用户在YJ系统输入某一个关键词后,相关微博就已经会出现"转""评""删"的内容,而此时并不具备Y公司所称的「相隔多天后进行数据对比」的条件,因此该解释不成立。 第二,关于不停网络爬虫不停抓取,所以可以获得足以支撑YJ系统运行的信息量的解释。 在案证据和现场勘验情况显示 ,用户未登陆时可以查看的微博内容非常有限,而在YJ系统内输入某一关键词后,监测到的微博数量,远远超过未登陆状态下可获取的内容。 比如在YJ系统输入"XXXX"关键词后出来的相关微博有15万余条,Y公司也声称YJ系统"每天收集境内外博文3亿余条"。 Y公司提交的证据不仅不能证明面对海量微博信息,YJ系统是如何选定关键词并将信息有效整合,反而证明的W公司确实设置了"用户行为触发"等访问权限。 Y公司无法证明为什么它的网络爬虫可以抓取需要"用户触发行为"才可以加载的信息。 勘验结果显示,即使网络爬虫可以模拟用户行为,每次用户行为触发信息加载,都需要一定时间,网络爬虫面对多次触发才可以完整收集的微博信息,其获取、显示过程显然无法达到Y公司宣传的"秒级"更新频率。 二审法院认为,在不通过技术手段破坏或者绕开W公司所作的技术限制的情况下,无法实现Y公司所宣称的YJ系统所具有的功能。 第三,关于"精确到秒"的解释。 法院认为Y公司说明了一种技术上实现的可能性,但是并未提交任何证据证明YJ系统是用这种方式实现的。即使YJ系统确实是通过这种方式实现"精确到秒",在Y公司无法对其他不能自圆其说之处作出合理解释的情况下,也无法推翻一审法院的认定结论。 综上,二审法院不支持Y公司的上诉主张,判断一审法院作出以下结论,并无不当:网络爬虫技术不足以支撑YJ系统运行所需要的数据量 Y公司是通过不正当手段获取微博数据 可以说,一二审整个过程写满八个大字——"打官司就是打证据"。 参考:2021年02月02日北京知识产权法院民事判决书(2019)京73民终3789号