3、网络爬虫安全性问题
  网络爬虫会占用网络带宽并增加Web服务器的处理开销,恶意用户甚至会利用爬虫程序对服务器发动Dos攻击。恶意用户还可能通过网络爬虫抓取各种敏感资料,主要表现在以下几个方面:
  1)搜索目录列表:互联网中的许多Web服务器在客户端请求站点中某个没有默认页面的目录时,会返回一个目录列表。该目录列表通常包括一个描述当前目录的标题,可供用户点击的目录和文件链接,及一个脚注。因而通过抓取目录列表,恶意用户往往可获取大量有用的资料,包括站点的目录结构、敏感文件以及Web 服务器配置信息等等。
  2)搜索测试页面、联机手册与样本程序:大多数Web 服务器软件附带了测试页面、联机手册与样本程序。这些文件往往会泄漏大量的系统信息,成为恶意用户剖析Web 服务器的工具,而且这些文件的存在也往往暗示网站的安全管理有问题,网站中存在潜在的安全漏洞。
  3)搜索管理员登录页面:许多网络产品提供了基于Web的管理接口,允许管理员在互联网中对其进行远程管理与控制。如果管理员疏于防范,没有修改网络产品默认的管理员名及密码,一旦其管理员登录页面被恶意用户搜索到,网络安全将面临极大威胁。
  4) 搜索互联网用户的姓名、电话、通信地址等个人信息,以便于实施社交攻击。
  5) 搜集群发垃圾邮件所需的邮件地址。
  6) 查找一个站点中的各种敏感文件,包括各种程序使用的配置文件、日志文件、密码文件、数据库文件等等。
  7) 搜索Web 站点中存在缺陷的程序。
  8) 获取互联网用户的信用卡密码,银行帐号等机密信息等等。
  因此,采取适当的措施限制网络爬虫的访问权限,对于保持网站的正常运行、保护用户的隐私是极其重要的。
  4、网络爬虫的新发展
  传统的网络爬虫技术主要应用于抓取静态Web 网页,随着AJAX/Web2.0的流行,如何抓取AJAX 等动态页面成了搜索引擎急需解决的问题,因为AJAX颠覆了传统的纯HTTP 请求/响应协议机制,如果搜索引擎依旧采用“爬”的机制,是无法抓取到AJAX 页面的有效数据的。
  AJAX 采用了JavaScript 驱动的异步请求/响应机制,以往的爬虫们缺乏JavaScript语义上的理解,基本上无法模拟触发JavaScript的异步调用并解析返回的异步回调逻辑和内容。
  另外,在AJAX的应用中,JavaScript 会对DOM结构进行大量变动,甚至页面所有内容都通过JavaScript 直接从服务器端读取并动态绘制出来。这对习惯了DOM 结构相对不变的静态页面简直是无法理解的。由此可以看出,以往的爬虫是基于协议驱动的,而对于AJAX 这样的技术,所需要的爬虫引擎必须是基于事件驱动的。
  参考文献:
  [1] 搜索引擎中网络爬虫技术的发展 王岩 电信快报 2008(10)
  [2] 网络爬虫技术的发展趋势 蔡笑伦 科技信息 2010(12)
  [3] 网络爬虫对网络安全的影响及其对策分析 梁雪松; 张容 计算机与数字工程 2009(12)