网络爬虫设计与实现designandimplementationofwebcrawler(附件)【字数:13960】
摘 要摘 要随着互联网的飞速发展,人们对于网络信息的需求越来越多,同时互联网中信心量变得十分巨大也颇为复杂。自一九九零年搜索引擎的建立以来,人们对于网络信息的获取变得方便起来。现在比较有名的例如Google,百度等。而网络爬虫技术就是搜索引擎中不可或缺的一环,能够让搜索引擎变得更快,更准确以及更加方便。本课题的主要研究内容是网络爬虫的设计与实现。本文研究了网络爬虫主要采用的策略,工作流程及建立方法。通过Python实现一个基于深度优先策略的单线程网络爬虫程序。通过导入Python中的urillb2模板中的urlopen函数实现一个可以爬取给定网页源代码的网络爬虫程序。通过建立这个网络爬虫来学习Python语言,了解互联网相关协议的工作方式以及了解网络爬虫的建立方法和工作方式。本文首先概述了网络爬虫的背景,接着介绍了网络爬虫的工作原理及所用技术,最后实现了一个简易网络爬虫软件,实验验证该软件可获取给定网页的源代码。关键词网络爬虫;Python;网络协议;源程序;爬虫随着互联网的飞速发展,网络中的信息程爆炸式的速度增长,使得人们在网络中获取信息变得越发的困难,在这种环境下,搜索引擎被开发出来了,它可以搜索互联网中所有的网页和各种有关信息,并以关键字建立索引。网络爬虫就是搜索引擎中不可或缺的一环,它的程序是一种可以主动并且不需要人工介入获取互联网中信息。网络爬虫实行的爬取策略和效率能够改变到整个搜索引擎的性能。
目录
第一章 绪论 1
1.1 网络爬虫的背景 1
1.2 研究方法,步骤和措施等 1
第二章 相关技术介绍 2
2.1 Python介绍 2
2.2 Python软件的安装 2
2.3 Python常用模块介绍 3
2.3.1 urillb2模板详解 5
2.4 Python 常用库介绍 7
2.5 在Python运行中经常遇到的17个错误 9
2.6 网络爬虫原理 11
2.7 网络爬虫策略 11
2.7.1 基于爬虫的策略 11
2.7.2 基于网页的策略 12
2.7.3 互联网拓扑的相关介绍 13 style="display:inline-block;width:630px;height:85px" data-ad-client="ca-pub-6529562764548102" data-ad-slot="6284556726"> (adsbygoogle = window.adsbygoogle || []).push({ });
目录
第一章 绪论 1
1.1 网络爬虫的背景 1
1.2 研究方法,步骤和措施等 1
第二章 相关技术介绍 2
2.1 Python介绍 2
2.2 Python软件的安装 2
2.3 Python常用模块介绍 3
2.3.1 urillb2模板详解 5
2.4 Python 常用库介绍 7
2.5 在Python运行中经常遇到的17个错误 9
2.6 网络爬虫原理 11
2.7 网络爬虫策略 11
2.7.1 基于爬虫的策略 11
2.7.2 基于网页的策略 12
2.7.3 互联网拓扑的相关介绍 13 style="display:inline-block;width:630px;height:85px" data-ad-client="ca-pub-6529562764548102" data-ad-slot="6284556726"> (adsbygoogle = window.adsbygoogle || []).push({ });
*好棒文|www.hbsrm.com +Q: ^351916072*
2.8 网络协议介绍 14
2.9 线程的概念 15
2.10 网络爬虫的效率介绍 16
第三章 需求分析 17
3.1 设计目标 17
3.2 具体实施计划 17
第四章 软件实现与实验验证 18
4.1 主要工作内容 18
4.2 程序展示与解释 19
4.2.1 程序展示 19
4.2.2 程序解释 19
4.3 实验验证 20
结语 26
致谢 27
参考文献 28
第一章 绪论
1.1 网络爬虫的背景
随着互联网的飞速发展,网络中的信息程爆炸式的速度增长,使得人们在网络中获取信息变得越发的困难,在这种环境下,搜索引擎被开发出来了,它可以搜索互联网中所有的网页和各种有关信息,并以关键字建立索引。网络爬虫就是搜索引擎中不可或缺的一环,它的程序是一种可以主动并且不需要人工介入获取互联网中信息。网络爬虫实行的爬取策略和效率能够改变到整个搜索引擎的性能。
网络爬虫的发展现状以及所遇到的问题:
现在网络爬虫主要是以Python语言为基础进行编程,国外对于Python这门语言使用的较多,因为它使用方便,易于上手。而在国内使用这门语言的人还比较少,还没有普及,大家多在使用JAVA,Matlab和C++等语言。现阶段网络爬虫在用三个搜索策略:1.IP地址搜索策略。2.深度优先搜索策略。3.宽度优先搜索策略。网络爬虫分为两类:通用网络爬虫和聚焦网络爬虫。提取相关信息的速度还不算很快,也没有那么理想中的智能化,发展前景还是很大的。随着AJAX/Web2.0被大家越来越频繁的所使用,如何抓取AJAX众多动态的页面成了搜索引擎急需解决的问题,如果搜索引擎还是采取单一的去爬取的机制,是无法抓取到AJAX众多页面中的有效数据的。对于AJAX这样的技术,所需要的爬虫引擎必须是基于驱动的。那么久需要解决以下三个问题:第一,JavaScript的交互分析和解释;第二,DOM事件的处理和解释分发;第三,动态DOM内容语义的抽取。
1.2 研究方法,步骤和措施等
(1)学习Python语言
(2)安装Python2.7软件
(3)通过自己的学习编写一个小程序来验证自己学习语言的效果。
(4)编写网络爬虫程序
(5)进行测试
第二章 相关技术介绍
2.1 Python介绍
Python是一种面对目标,直接翻译的计算机程序设计的一种语言。它是一种功能非常给力并且无法挑剔的通用型语言。已经有了十几年的发展,成熟而且稳定。它的语法使用起来简单并且清晰,具有非常丰富并且强大的类库。
2.2 Python软件的安装
打开python软件的官网,网址为:https://www.python.org/
在里面打开Downloads,选在windows。在里面我们可以看到有两个版本的下载选择,一个是3.5.1另一个为2.7.11.因为在这两个版本中在输入语法和使用的语法有些不同,而我们之前学的内容大都适用于2.7.11这个版本,所以我们对这个版本进行下载。需要注意的是,需要看清是64位操作系统还是32位操作系统,选择与自己电脑系统相匹配的版本下载。当下载完成后,双击安装包,这时会出现安装界面,选择install just for me这个选项,然后点击next,安装路径一般在C盘,这时候要将自己的安装路径记住,在后面设置的时候要用,点击next,选择要安装的文件,通常全部选择,点击next,接着就是等待着它安装。安装完成后需要进行一个重要的步骤就是对它进行设置,否则无法正常使用,具体的操作为:右键我的电脑,点击属性,选择高级系统配置,点击高级,点击环境变量找到Path路径,对它进行更改,将前面软件安装的路径写在变量值最后数值的最后,注意,要用分号对它们进行分割。打开DOS界面,在里面输入Python,如果安装成功了,那么你就能看到你电脑中该软件的版本信息了,这时你就可以运行这个软件了。运行这个软件有两种方法,一种是直接打开DOS界面,然后输入Python进入Python,然后在这个窗口内进行代码的设计以及操作。为了操作方便我们选择了第二种方法,那就是打开开始窗口,点击所有程序,找到Python 2.7这个文件名,里面有一个IDLE。它是自带的一个集成开放环境,方便初学者创建,开发,编写,运行,测试和调试程序。本文以后的所有内容都是在这个环境中进行工作的。选择File,点击New File,这时会弹出一个新的界面,这个界面是供我们编写并修改程序的,我们也可以在这个页面中创建我们的组态和函数。当我们编写好程序后,在第二个页面中有一个Run选项,点击它选择Run Module。这个时候运行的结果就会在第一个页面中显示出来了。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jxgc/zdh/1549.html