基于Chrome扩展爬虫系统设计与实现.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Chrome扩展爬虫系统设计与实现

基于Chrome扩展爬虫系统设计与实现   摘 要:为了提高网页数据抓取效率,降低爬虫对系统资源的消耗,提出了一种基于Chrome扩展的爬虫系统。利用Chrome浏览器对网页进行解析,防止被爬取对象屏蔽和网页异步加载问题,并且实现数据结构化;通过选择普通用户版扩展和服务器版扩展,既可以实现无人值守主动抓取,也可以在用户浏览网页的同时抓取信息。整个系统前后端分离,并且采用面向接口编程,具有良好的扩展性。通过从搜达足球网站抓取英超赛程,验证了程序的高效可行性。   关键词:爬虫系统;Chrome扩展;Netty   中图分类号:TP319 文献标识码:A 文章编号:1672-7800(2016)003-0076-05   作者简介:魏少鹏(1990-),男,甘肃天水人,东华大学计算机科学与技术学院硕士研究生,研究方向为计算机软件与数据可视化;夏小玲(1966-),女,上海人,博士,东华大学计算机科学与技术学院教授,研究方向为计算机软件与数据可视化。   0 引言   在大数据时代,信息呈“爆炸”式增长,为企业和个人提供了丰富的信息来源。以新浪微博为例,截至2015年8月,有注册用户6亿,日均活跃用户6 600万,日均发微博1.2亿条[1],只通过搜索引擎搜集、获取整合数据非常困难[2-3]。在大数据时代信息空前丰富的背景下,数据获取,即如何有效整合散落在互联网各个角落的数据,从而为用户提供更为精准的信息至关重要,解决该问题归根结底涉及到网络爬虫技术[4]。   网页爬虫几乎与网页技术一同出现,刚开始的爬虫技术主要是利用图论知识,将整个互联网看作一个连通图,采用深度优先或广度优先算法来抓取数据。随着互联网规模的扩大,对采集速度和数据质量要求不断提高,由此出现了主题爬虫,即根据给定的主题,抓取与主题相关的网页。当互联网规模和技术进一步发展,出现了基于分布式的爬虫,例如Google Crawler、Internet Archive Crawler等,并且还出现了针对Ajax网站的爬虫,例如Google Groups、Google Suggest等。无论是传统爬虫还是主题爬虫,抑或是分布式爬虫和针对Ajax的爬虫[5-7],其核心技术都是使用程序模拟IE浏览器的功能,将URL作为HTTP请求的内容发送到对方服务器端,然后读取对方服务器端的响应资源[8]。   但在实际使用中,传统爬虫技术存在很大的局限性:①实现IE客户端模拟难度大,由于网络环境复杂,不仅实现模拟IE客户端的工作很困难――即使调用开源的API,也是非常繁琐的,而且网页的解析工作也异常困难复杂;②使用场景存在很大局限性[9],比如不能处理包含异步请求的网页、抓取的数据中含有很多脏数据(如通过网页中的URL抓到广告等)、对服务器配置要求高(所有操作都在中央服务器)、容易被抓取对象屏蔽(客户端浏览器模拟不完善)和无法获得网页详情(网页的URL通过JavaScript动态生成加密信息)等一系列问题;③使用不友好,主要表现是部署难度大,只适合专业用户,不支持用户在浏览网页的同时爬取数据。   针对传统爬虫的以上缺点,设计了基于Chrome扩展的爬虫系统,其优势如下:①实现难度小。因为本身就是基于Chrome浏览器,所以不需要模拟浏览器、解析网页等;②使用局限性小。基于Chrome扩展的爬虫系统本身就是浏览器访问,不仅可以解决对方服务器端对user-agent验证的屏蔽问题,而且可以解决URL带有动态加密信息造成的问题。Chrome扩展的爬虫系统是对解析好的网页信息进行提取,因而只会提取所需要的结构化信息,降低脏数据,提高数据质量。通过控制Chrome扩展中JavaScript脚本的执行时间,可以解决网页的异步加载问题;③使用友好。因为是基于Chrome的扩展,所以安装非常方便;信息抓取模块不仅有可以自动抓取的服务器版还有普通用户版,普通用户版可以在用户浏览网页时实现信息抓取,降低了对双方服务器的负载。   1 系统结构   通过对传统爬虫系统和Chrome扩展的研究,本文设计的基于Chrome扩展的爬虫系统是一个严格的前后端分离的系统,信息抓取模块负责信息提取和结构化,中央服务器模块负责数据去重和持久化,两者之间没有业务上的重合。系统架构如图1所示。   如图1所示,基于Chrome扩展的爬虫系统主要由3个模块构成,即基于Chrome扩展的信息抓取模块、接受并处理Chrome扩展信息的中央服务器模块和进行数据存储的数据库模块。   1.1 中央服务器模块   中央服务器主要接受信息抓取模块的请求,根据需求返回配置数据或者接受抓取到的数据,并对接受的数据去重之后进行持久化。因为该过程不解析数据,所以相较于传统爬虫系统更节省资源。根据信息抓取模块的设计要求,

文档评论(0)

fangsheke66 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档