从网页上提取数据时阻止Javascript

You can't request more than 20 challenges without solving them. Your previous challenges were flushed.

网页数据提取工具包MetaSeeker的强项就是提取AJAX网页数据,在GooSeeker社区网站上有大量的文章讲述AJAX网页数据的提取,DataScraper由于集成了Mozilla的完整功能特性,Javascript的解释执行是透明的,定义数据提取规则时不用顾及Javascript的存在。但是,很多情形并不需要提取Javascript产生的数据,在这些情形下还加载Javascript代码并予以执行将消耗不必要的带宽和CPU资源。本文将讲解怎样阻止Javascript的下载和执行,以提高网页数据提取的速度。

       注意:只有企业版MetaSeeker才具有本文所述功能,而且是从V4.11.2开始支持

阻止图片下载和插件下载类似,为以下两种DataScraper的操作模式分别设置选项开关:

  • 手动批量提取
  • 周期性批量提取


手动批量提取网页数据

在DataScraper“配置”菜单中,增加了一个菜单项“配置浏览器”,这是一个弹出菜单,具有菜单项:

都是选项菜单,缺省情况下是被勾选的,如果修改了选择状态,将记录在配置文件中,今后重新运行DataScraper时将使用最新设定。



周期性批量提取网页数据

周期性网页数据提取指令文件(crontab.xml)中,增加了一个参数:

  • allowJavascript

该参数是布尔值,true或者false。该参数属于类别是crawl的step,可以为不同主题设置不同的值,缺省情况下取值true。



总结

手动批量提取和周期性批量提取使用不同的参数设置,如果在crontab.xml中不设置上述参数,自动周期性提取线程使用缺省设置而不考虑手动提取的设置,反之亦然。