Python分布式爬虫技术在爬取小说中的应用开题报告

 2022-01-14 11:01

全文总字数:5047字

1. 研究目的与意义、国内外研究现状(文献综述)

课题的意义、国内外研究进展、应用前景等(列出主要参考文献)课题的意义: 随着大数据和人工智能时代的到来,对信息的搜索、处理、分析、归纳并总结其深层次的规律显得尤为重要。数据的处理包括多个方面,从数据的爬取,清洗到数据的分析,再到数据的可视化展示等等一系列的操作都是各个专家学者等研究和探索的热点。爬虫技术又称网络蜘蛛,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。它可以在庞大的数据中有效准确地抓取目标数据,从而为我们节省大量的资源,对信息检索起着十分重要的作用[1]。在编程语言的选择上,也成为了大家辩论的焦点,在众多语言中,python语言占据了其一席之地[2]。python语言在网络爬虫技术上的应用对于数据的获取及分析起到重要作用,研究其应用现状及前景对于探索技术的发展也将推动信息技术的进步。而分布式爬虫技术是基本大数据时代下,而产生的高效的爬虫技术。 通用搜索引擎是人们定位所需Web资源的利器,随着Web术的发展和人们对通用搜索引擎需求的精细化,通用搜索引擎已越来越不能满足人们日常的搜索需要。当我们需要查询一类特定的信息时,通用性搜索引擎并不能将信息进行集中化处理和展示,无法让我们直观的看到我们所需要的信息。通过定制爬虫来实现我们对特定信息的搜索,自行设计要获取的信息内容和特定的搜索范围,能让我们更加精确地获取到信息。网络爬虫的优势在于不需要用户轮班值守,能自动化运行,自动判断网页数据的状态,及时更新。国内外研究进展: 作为搜索引擎技术核心元素之一,爬虫技术历经20多年的发展,技术已日趋多样。为满足不同用户多种多样的需求,创建开发了类型众多的爬虫系统。按照实现技术和其系统构成,爬虫系统主要可以分为以下几种: 1、通用网络爬虫 它通过一系列预设的初始链接开始,获取页面上所有链接,根据预设规则,提取链接,进入待爬取队列,进而不断访问网页下载网页或取链接。然后通过HTML解析技术,获取页面数据,提取所需信息并保存,与此同时将新获取的链接放入待爬取队列,直到达到系统预设指定条件为止。通用网络爬虫有两种常用的爬取策略: (1)深度优先策略(Depth first strategy):这是在爬虫发展早期使用比较多的方法。这种策略最终要达到的效果是一直搜索到由站点分布抽象出来的树的叶子节点(即网页站点的最底层不包含任何其他不重复的网页链接的网页) 。在一个网页文件中,当爬虫获得当前网页中的第一个链接后,就对该链接所指向的网页文件执行深度优先搜索策略,也就是说在搜索当前页面的其他的链结结果之前,必须先搜索出一条路径使其形成一条独立的完整的链。形象点说深度优先搜索策略就是沿着该网页解析出的HTML文件的一个链接转接到另一个链接从而由链接组成的链接网络一直走到不能更加深入为止,然后返回到之前所在的某一个网页文件中,再继续选择该网页文件中的下一个不重复的链接,重复上述动作。当初始网页中不再存在其他链接可供选择时,说明此次搜索已经结束。但如果所需爬取网页节点结构比较深时的时候,该策略会引起较大的资源浪费,爬取效率也不太高。

(2)广度优先策略(Breadth first strategy):简称BFS,又称之为宽度优先搜索策略,或横向优先搜索策略,作为一种图形搜索算法提出来,其思想亦可用于网络爬虫的设计。简单的说,广度优先搜索策略是从树根节点开始,沿着树的宽度遍历树在同一层的节点。如果该树的所有节点均被访问,则算法结束。广度优先搜索策略的实现一般采用open-closed表。广度优先搜索策略先将所需爬取网页的站点按照页面结构划分成不同的层次,然后沿着划分好的层次一层一层的由上到下进行爬取。先爬取浅层次的链接,将处于同一层次的所有网页处理完成之后再向下一个层次继续爬取。广度优先策略可以以并发的方式进行爬取,由于程序并发会提高程序的工作效率,所以这种特性在一定程度上可以提高爬虫的爬取效率,而且同时也可以任意控制爬虫爬取网站站点的深度,从而避免了使用深度优先策略是爬虫陷入无穷深度从而导致爬虫不能正常结束的状态。

2、增量网络爬虫

增量网络爬虫(Incremental Web Crawler)是一种根据不同同一网站上不同页面更新的频率的不同来对应不同的策略的爬取策略,是一种对已经爬取过的页面在数据存储中采取增量式的更新的策略,也就是说这种爬虫策略只会爬取当前新出现页面的数据和页面产生更新的数据。增量更新的策略相对于优先策略来说其不会出现大量重复爬取页面的情况,避免不能充分利用硬件或网络等资源,最终导致整个系统使用效率低下的情况的发生。

应用前景:

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

2. 研究的基本内容和问题

研究的目标、内容和拟解决的关键问题

研究的目标:

利用python网络爬虫爬取小说网站,并从中取出数据,并对数据进行简单处理并输出,下载小说。可分为:

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

3. 研究的方法与方案

研究方法、技术路线、实验方案及可行性分析

研究方法:

通过阅读相关论文,书籍,尝试编写代码再改进,在win7环境下,python3,下载requests库、re.在利用requests库中的get()进行html的访问,并返回相应的html代码,在利用正则表达式,对内容进行定位,进而提取所需要的内容,在利用open()及write()函数进行创建及写入。

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

4. 研究创新点

特色或创新之处特色或创新之处一: 实现了人工智能与大数据的结合:在当今大数据的时代下,以论G、T的存储容量下,对比当今的数据量显得极其的渺小。

凭借人工处理收集数据已经远远的不够,而python爬虫技术的出现,打破原始的方式,为大数据收集提供了新的技术。

采用语言编程,让程序模拟浏览器自行访问web,并返回其中的html代码,在从其中的代码中,寻找下一个目标网站的url,在访问提取内容。

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

5. 研究计划与进展

研究计划及预期进展研究计划:2018.12.1-2019.1.31 学习python的基础知识;2019.2.1-2019.2.15 requests库及正则表达式的学习;2019.2.15-2019.3.1 学习基础的html并初步的编程访问url;2019 3.1-2019.3.5 开题报告的撰写;2019 3.5 -2019.3.20 python爬虫爬取小说的整体实现;2019.3.20-2019.5.10 修改模型、总结并撰写毕业论文。

预期进展:2018.12.1-2019.3.1 知识储备完成;2019.3.1-2019.3.20 爬虫爬取小说的实现;2019.3.20-2019.5.10修改模型、总结并撰写毕业论文。

剩余内容已隐藏,您需要先支付 5元 才能查看该篇文章全部内容!立即支付

以上是毕业论文开题报告,课题毕业论文、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。