scrapy分页抓取网页(林伟坚申请学位级别硕士专业计算机软件与理论指导)
优采云 发布时间: 2021-09-24 04:12scrapy分页抓取网页(林伟坚申请学位级别硕士专业计算机软件与理论指导)
基于Scrapy框架的南开大学硕*敏*感*词*论文实时新闻抓取与处理系统的设计与实现。姓名 林伟健 申请学位 硕*敏*感*词* 计算机软件与理论专业导师 袁晓杰 2012 05 Abstract Abstract 随着互联网的飞速发展,信息爆炸给人们带来了信息过载的问题 新闻和信息,作为大多数接触媒体的信息发布方式,已逐渐从传统媒体转向互联网。新闻信息作为互联网信息的重要组成部分,也在急剧增加。在这种情况下,论文确定的研究方向是通过分布式实时新闻爬取对互联网上各个站点的新闻内容进行快速聚合和处理,使人们能够更高效、更全面地获取新闻信息。论文深入分析总结了互联网新闻信息、新闻站点、新闻爬虫的特点。新闻网站的页面准确地分为导航页面和新闻页面。通过区分这两个页面的不同监控和抓取措施,详细设计适合新闻。爬虫的核心算法包括爬取策略和更新策略。这两个核心算法可以保证新闻全面高效的抓取。通过使用这两个开源数据库软件爬虫框架进行深度定制,实现了一套分布式系统。新闻实时抓取系统。这个实时新闻抓取系统在多个模块中使用正则表达式的方法来提取和识别相关数据。论文还设计并实现了一个具有可配置模块的新闻数据处理管道来处理爬取的新闻。
流水线的功能模块包括新闻数据抽取、新闻属性正则化、分页新闻合并、新闻内容清洗等。论文实现了基于特征提取方法的新闻去重算法,用于根据中文新闻的特点提取新闻特征。论文中实现的分布式实时新闻爬取和数据清洗系统已应用到实际生产过程中。通过对多个新闻站点和多个初始化导航页面的爬取和监控,系统每天可以爬取超过10000个页面,其中新闻页面占比较高。这些运行数据表明该系统具有较高的爬行效率。后续的数据处理管道也能够处理和处理日常新闻。< @关键词新闻爬虫数据提取新闻去重第一章介绍第一章介绍第一节研究背景和意义随着互联网的飞速发展,互联网正在渗透到我们生活的方方面面,从精神信息的获取到物质需求。可以通过互联网实现。技术是展示技术的最佳方式。它以其方便、快捷和丰富的表现形式成为目前应用最为广泛的交互方式。随着信息的爆炸式增长,数以亿计的网站搜索引擎不断涌现。收录的网页数量也在快速增长。同年,通过博客宣布,它们索引的网页数量已达到万亿。即便如此,被索引的网页只是互联网上所有网页的一部分。互联网上海量的信息给人们带来了极大的便利。通过互联网,人们可以高效快捷地获取各种信息。
但是信息的大爆炸也给用户带来了信息过载的问题。如何从海量信息中快速选择自己需要的信息,是一个日益紧迫的问题。世纪末,作为第一代互联网信息获取者,解决了当时信息过载的问题,成为互联网奇迹的缔造者之一。但是,随着互联网的不断发展,信息过载的问题越来越严重。这种目录信息采集网站已经不能很好的解决信息量大的问题了。1999年成立的新一代互联网信息获取方式逐渐被取代,并改变了整个互联网获取信息的方式。作为搜索引擎,它利用网络爬虫主动采集互联网上的各种信息,对其进行排序和存储,同时为这些信息建立索引,供用户快速检索。这种模式让用户摆脱了目录导航网页的限制,可以快速找到互联网上的各种信息,大大提高了工作效率和获取信息的质量。也因此成为互联网的第二代霸主。作为搜索引擎的重要组成部分,网络爬虫是搜索引擎从互联网上下载网页。它的爬取效率影响搜索引擎可以索引的页面数量,更新的频率直接决定了搜索引擎的质量。它不仅可以为搜索引擎提供最基本的数据来源,还可以判断数据的质量。新闻是人们在现实生活中接触最多的一种媒体信息。随着互联网的飞速发展,新闻逐渐从传统媒体转向互联网。
随着互联网时代的到来,新闻时滞趋于零。人们获取新闻和信息的渠道已逐渐从传统媒体转向互联网。同样的新闻信息,作为互联网信息的重要组成部分,在没有第一章介绍的情况下也在不断增加。如何让人们更高效、更全面地获取新闻信息也是一大挑战。与搜索引擎一致,新闻信息的聚合首先要解决新闻信息的获取问题。传统的网络爬虫对互联网上的所有信息一视同仁,不对新闻信息的爬取做特殊处理。发布后长时间被捕获并呈现给用户的新闻信息已经失去了意义。通过传统的网络爬虫爬取新闻信息已不能满足新闻时效性的要求。因此,必须有一个针对新闻信息特性设计的专注爬虫来抓取新闻,这样才能高效地抓取新闻信息。随着互联网的发展,互联网的新闻和信息也进入了一个只依靠单一服务器快速处理任务的海量时代,变得越来越少。新闻信息的爬取不能依赖单个服务器来设计分布式爬取系统。这是势在必行的。除了分布式新闻爬虫,新闻信息获取还需要一套有效的新闻数据处理方法来处理和处理新闻数据,以便有规律地向用户展示。简而言之,新闻信息的获取需要高性能分布式爬虫技术、数据处理技术和海量数据存储技术的支持。研究分布式新闻爬虫和新闻数据处理相关技术,满足用户高效、全面的获取。对新闻信息的需求具有很高的学术研究价值。
第二部分,主要研究内容和工作。为了能够全面、快速地获取新闻信息,论文设计了分布式实时新闻采集系统和新闻数据处理方案。主要完成了以下工作,对传统全网爬虫的开发及相关算法和技术进行了深入研究。详细比较了几种性能较好的全网爬虫的优缺点,以此指导新闻爬虫系统的设计。对互联网新闻信息、新闻站点和新闻爬虫的特点进行深入分析和总结。基于这些特点,详细设计了新闻爬虫的核心算法爬取策略和更新策略。基于深度定制的爬虫框架,结合两个开源数据库软件,实现了一套分布式实时新闻爬取系统。系统的爬行性能是通过分析爬行系统的运行数据来确定的。设计了一套模块可配置的新闻数据处理流水线,包括新闻数据抽取、新闻属性正则化、分页新闻合并和新闻内容清洗等模块。根据中文新闻的特点结合算法,实现了第1章引言中更高效的新闻去重算法。第三部分论文组织结构论文后续章节组织如下。第二章详细介绍了网络爬虫的发展及相关算法和技术。第一的,介绍了网络爬虫的定义及其常用的算法和模块。然后选取三个性能较好的开源爬虫作为代表,仔细考察它们的特点,并进行详细的对比。本章的第二部分还介绍了论文的实现。新闻爬虫使用的框架详细描述了组成、架构和程序执行流程。
第三章详细介绍了分布式新闻实时采集系统的实现方案。首先介绍新闻爬虫的特点,并根据这些特点制定新闻爬虫的实施方案。通过对爬虫框架的深度定制,借助两个开源数据库,设计并实现了一套分布式实时新闻爬虫系统。本章的最后一部分是通过爬虫对系统实际运行过程中的数据进行统计分析。第四章详细介绍了新闻数据处理方案,尤其是新闻数据的提取。本章研究了传统信息检索系统中网页文本数据的提取方法,总结了新闻数据的特点,并介绍了基于研究和摘要内容设计的新闻数据提取方法。还简单介绍了新闻属性的正则化、分页新闻的合并、新闻。其他数据处理模块,如内容清理和新闻重复数据删除。第五章总结了论文的全部工作,并对未来的研究工作提出展望。第二章爬虫研究与框架介绍第二章爬虫研究与框架介绍网络爬虫,又称网络蜘蛛,是根据一定的逻辑和算法从互联网上爬取和下载网页的一段计算机代码,是其重要组成部分的搜索引擎。定向爬虫是一种网络爬虫,用于爬取互联网上特定类别的信息。新闻爬虫是一种常见的网络爬虫。本章将介绍网络爬虫常用的算法以及可以快速开发自定义爬虫的框架。第一节网络爬虫研究网络爬虫是一种自动抓取和下载网页的程序。它是一个从万维网下载网页的搜索引擎。它的爬取效率影响搜索引擎可以索引的页面数量,更新频率直接决定搜索。发动机的质量。它的爬取效率影响搜索引擎可以索引的页面数量,更新频率直接决定搜索。发动机的质量。它的爬取效率影响搜索引擎可以索引的页面数量,更新频率直接决定搜索。发动机的质量。
一个好的网络爬虫需要有良好的结构和优秀的算法支持。本节将重点介绍网络爬虫的基本架构和算法。网络爬虫简介 随着互联网的飞速发展,数以亿计的网站搜索引擎不断涌现。网页收录的数量也急剧增加。通过博客宣布,它们索引的网页数量已达到10,000。即便如此,被索引的网页只是互联网上所有网页的一部分。搜索引擎通过网络爬虫获取这些数据。网络爬虫通过超链接遍历整个互联网并下载并将遍历的网页保存到数据库中。在数据量快速增长的今天,网络爬虫的效率直接影响到搜索引擎的质量。过去几年,许多专家学者致力于提高网络爬虫的效率,发表了许多成果。在前两次会议上发表了多篇关于网络爬虫的论文后,世界上第一个网络爬虫诞生了。一个高效的网络爬虫程序需要具备两个非常重要的特性。首先它要有一个爬取策略,比如决定下一个爬取策略。其次,它必须具有高度优化的系统架构,可以在短时间内下载大量网页,并能够在考虑资源和服务器负载的情况下从系统崩溃中恢复。网络爬虫会多次初始化这些集合,以确保网络爬虫能够覆盖尽可能多的网站。网站 上的网站链接 基于第二章爬虫研究和框架介绍。经常被网络爬虫使用的网站是一个众所周知的开放类别目录网站,它维护着大量的Interconnect 网站点的链接。
网络爬虫将互联网视为一个大网页,它是节点和网页之间的超链接,表示节点和节点之间的连接。网络爬虫从最初的一组节点开始——按照超链接遍历这个大网络。在遍历的过程中,每访问一个页面,都会从页面中抽取一个新的,放入爬取队列中。目标爬虫需要对网页做进一步的分析,过滤掉网页中无用的部分,保留有效区域,提取到队列中。爬虫会根据一定的调度算法从队列中选择下一个要爬取的网页,循环直到队列为空。网络爬虫爬取完网页后,会对所有网页进行分析、清理、提取,并保存处理后的数据。网络爬虫应用 网络爬虫在获取数据时可以用于多种场景。下面介绍几种常见的网络爬虫应用,并分别介绍各自的爬虫策略。第一个常见的爬虫是广度优先爬虫。这是整个网络搜索引擎的网络爬虫的主要抓取策略。为了构建一个面向整个互联网的搜索引擎网络爬虫,如果想要更高效,一般会开始以广度优先的爬取策略遍历互联网。事实上,搜索引擎爬虫并没有严格遵循广度优先的策略来爬取数据。它使用多种爬行策略的组合。第二种常见的爬虫是重新爬取现有页面以获取数据更新。在一些应用场景中,当网页被抓取时,
实现这种爬虫的策略比较简单。可以直接启动另一个广度优先爬虫,也可以将已爬取的网页重新放入爬取队列。但是,更好的爬虫会根据网页的更新频率和重要性自动调整爬取频率。第三种爬虫是聚焦爬虫,也叫定向爬虫。本文所研究的爬虫正是这种类型的爬虫。许多垂直搜索引擎采用特定的抓取策略来抓取特定类型的网页,例如网页上的特定主题或语言、图像、文件等。百度搜索、新闻搜索、去哪儿搜索等垂直搜索引擎都使用聚焦爬虫来抓取数据。专注爬虫需要一个优秀的策略来发现和爬取有用的页面,以避免下载太多无用的页面和浪费昂贵的带宽资源。一般来说,专注爬虫会使用启发式方法或第2章爬虫研究和框架中介绍的更通用的链接结构分析方法,利用机器学习技术来发现和爬取页面。第四类爬虫是深度网络爬虫。互联网上的信息不仅仅是网页,还有很多信息。存储在数据库中的数据无法在静态网页上显示。只有通过网页中的表单向服务器发送请求才能获取数据。该数据也称为曲。目前,已有大量学者对音乐数据的获取进行了深入研究。最后一种爬虫是采样爬虫。这个网络爬虫随机选择网页进行爬取和采样。经典的应用是对互联网页面的数量进行抽样和估计,或者评估搜索引擎的质量。
论文是该领域的典型代表。网络爬虫调度策略 互联网上有无数的网页。为了在有限的带宽内高效地抓取有效的网页,网络爬虫需要一个优秀的调度策略的支持。常见的网络爬虫调度策略包括以下几种广度优先爬行。如上一节所述,这种爬取策略采用广度优先的方法遍历整个互联网。论文[中,对这种调度策略做了更详细的实验。传入链接计数是一种调度策略,它优先抓取那些被最多超链接指向的页面。下一个要爬取的页面始终是最常爬取的页面。它的原理是,如果一个页面很受欢迎,那么其他页面中就会有很多指向该页面的超链接,这些链接被称为传入链接或传入链接。一般来说,导入的链接数量越多,页面就越受欢迎。批量导入链接计数的方法无法体现不同超链接的价值。该算法充分考虑了不同超链接贡献的价值不同。但是由于每次爬取后链接都会有变化,所以选择批量计算。然后从高链接中选取部分链接进行爬取。爬取完成后,再次更新计算进入下一轮爬取等。部分算法与批处理非常相似。它们都是估计的,但批量计算过于频繁且成本高昂。
在线页面权重计算提出了一种基于算法的爬取算法。早期版本的默认算法是针对静态图像的。该算法的基本思想是每个页面都有一个初始分数。当一个页面被抓取时,该页面的分数会平均分配给它所连接的页面。整个网络图的总分固定在 爬取网页的过程中,这些固定的分数在页面之间循环。一个页面在算法中的重要性定义为流通过程中流经该页面的总点数占总流通量的比例,非常直观。网络爬虫必备模块 一个优秀的网络爬虫不仅需要好的调度策略,还需要很多必要的功能模块。这些模块包括网页编码检测、网页分析、超链接提取和分词。网页编码检测是网络爬虫的重要组成部分。网络爬虫通过编码检测获取网页的编码格式,然后对网页进行转码。如果代码检测模块无法正确识别代码,则爬虫抓取到的信息将无法正确转码。检测网页源代码的编码方式一般有两种。一种是通过分析网页源代码中的信息得到编码,但有些网页不收录任何编码信息。这时候就需要用第二种方式检测了。二是使用统计和启发式方法检测网页源代码的代码。解析是网络爬虫获取网页主要内容和超链接的模块。只有通过解析器的正确解析,网络爬虫才能不断的加入到爬取队列中。
网络爬虫的解析器不仅需要能够解析网页,还需要具有较高的容错性和性能。互联网上的网页是人为或机器生成的,难免存在结构性错误。解析器需要能够扫描文件并修复许多编写文档过程中常见的错误,例如添加缺失的元素、用结束标签关闭对应的元素、修复不匹配的嵌入元素等。分词是指将文本内容分割成单个单词的过程。它是网络爬虫提取数据后数据索引前的一个重要环节。在英语语法中,每个词之间有一个空格来分隔分词是比较简单的,而在中文分词中,将无间隙的汉字序列拆分成单个单词是非常复杂的。现有的分词算法可以根据字符串匹配分为三类,基于