数据挖掘的前提---信息抓取:通用爬虫和聚焦爬虫

一. 互联网信息抓取

  • 随着网络的迅速发展,Internet (万维网)成为当今世界最大的信息载体,每天又有不可计数的新数据涌入Internet 中。如今, 人们面临的一个巨大的挑战就是如何从海量数据中提取有效信息并加以利用。“ 要处理数据,就要先得到数据”,从Internet 上将数据获取下来,是进行数据处理的第一步。互联网信息自动抓取,最常见且有效的方式是使用网络爬虫( Web Crawler、Web Spider)。

二. 爬虫概述

  • 网络爬虫有很多名字,例如,“网络蜘蛛”(Web Spider)、 “蚂蚁”(Ant)、“自动检索工具”(Automatic Indexer)。 网络爬虫是一种 “机器人程序”, 其作用是自动采集所有它们可以到达的网页,并记录下这些网页的内容,以便其他程序进行后续处理。例如,搜索引擎可以对已爬取的网页进行分拣、归类,使用户可以更快地进行检索。

  • 在人类社会中,有一个著名的“六度分离理论”( Six Degrees of Separation) :“你和任何一个陌生人之间所间隔的人不会超过五个,也就是说,最多通过五个人你就能够认识任何一个陌生人。”类比到互联网世界,每一个网页就像人类社会中的一个人,超链接将网页联系起来,使它们互相“认识”。因此,互联网世界的每个网页,都可经过有限个超链接相互到达。爬虫的爬行是从一些被称为“种子”的网页开始进行的,这些“种子”是一个包含很多超链接的列表,爬虫依次访问每.个超链接,得到网页内容,将网页内容存储到数据库中供其他程序进行后续处理,同时提取该网页内的所有超链接,并循环执行“访问网页一记录信息一提取并记录超链接”这一过程。 爬虫的初始种子是非常重要的,为了保证抓取/覆盖尽可能多的网页,初始种子越完备越好。一个对应的解决方案是通过DNS服务器所在机构获取所有注册的域名。爬虫爬取过的网页也有可能发生变化(例如,网页内容被删除或修改了),为了保证这些变化能够被及时获取,爬虫需要根据定的策略对这些网页重新爬取。

三. 通用爬虫和聚焦爬虫

  • 爬虫可以被分为两类:一类叫作“通用爬虫”,搜索引擎背后的数据采集工作大多是由通用爬虫来做的。这种爬虫追求大的爬行覆盖范围,对于在网页中提取到的超链接会“照单全收”,能够爬取到尽可能多的网站,获取到各式各样的信息。另一类叫作“聚焦爬虫”,与通用爬虫不同的是,它会对提取到的超链接进行过滤,只对特定网站或者特定领域的网站进行爬取。这类爬虫的应用也很广泛,例如,可以在招聘网站上收集所有公司的信息,分析公司所在地分布状况和公司规模分布状况。

  • 爬虫程序使用的技术很多,在超链接访问顺序策略中,最常用的是“广度优先搜索”和“深度优先搜索”。在重新抓取策略中,需要根据网站更新记录得到更新规律,确定重新抓取间隔。爬虫可以收集“原始"的网页,但这些网页由于信息混杂,不便于被检索。这时,就需要对原始网页进行分析和组织,例如,文本分词、数据抽取、文本聚类和建立索引等

  • 目前成熟的网络爬虫有很多,其中不乏Googlebot、百度蜘蛛这样的广分布式多服务器多线程的商业爬虫和GNU Wget、Apache Nutch 这样的灵活方便的开源爬虫(爬虫搜索引擎)。

  • Googlebot使用计算机集群,每天获取(或称为“爬取”)数十亿张网页,同时使用各种算法来计算需要获取哪些网站、获取网站的频率和从每个网站上获取网页的数量。目前,Googlebot 不仅可以抓取静态HTML页面,还可以执行JavaScript 语言并且抓取由Ajax动态生成的内容时。百度蜘蛛的调度程序采用深度优先和权重优先结合的抓取策略来控制蜘蛛的抓取行为,并将下载回来的网页放到“补充数据区”,通过计算后再放入“检索区”,形成稳定的排名,供用户进行检索。

四. Nutch搜索引擎

  • Nutch是一个包含Web爬虫和全文搜索功能的开源搜索引擎,使用Java语言实现。相对于商用的搜索引擎,它的工作流程更加公开透明,拥有很强的可定制性,并且同样可以运行在服务器集群上。
  • Nutch的简单使用:一站式抓取;分布式抓取。

五. 爬虫实例分析:舆情信息汇聚

  • 舆情是“舆论情况”的简称,是指在一定的社会空间内,围绕中介性社会事件的发生、发展和变化,作为主体的民众对作为客体的社会管理者、企业、个人及其他各类组织及其政治、社会、道德等方面的取向产生和持有的社会态度。它是较多群众关于社会中各种现象、问题所表达的信念、态度、意见和情绪等表现的总和。

  • 网络舆情 是以网络为载体,以事件为核心,是广大网民情感、态度、意见、观点的表达,传播与互动,以及后续影响力的集合。带有广大网民的主观性,未经媒体验证和包装,直接通过多种形式发布于互联网上。网络舆情主要通过微博、朋友圈、贴吧、新闻、新闻评论、聚合新闻、论坛等途径进行传播。

  • 各单位可通过网络信息自动抓取等技术手段,便捷、高效地获取与自己相关的网络舆情,不仅信息保真,而且覆盖全面。通过网络舆情监控系统最终形成专题简报、专题追踪、舆情简报等,为各单位全面掌握网络舆情动态,正确引导舆情动向,提供了可靠、有力的数据分析依据。

  • 通常情况下,网络舆情监控系统由采集层(舆情采集模块)、分析层和呈现层(分析浏览模块)实现,系统基本架构如下图所示。
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_38132105/article/details/107115642