pyspider框架的网络爬虫的研究与实现【字数:14013】
摘 要无论是哪个领域,数据都已经成为了取得未来竞争力的关键因素。而网络爬虫正满足了人们的这种需求,它作为一种高效的信息采集利器,让人们快速便捷得采集得到准确可靠的各种数据资源,在对数据进行处理分析后,将原本一条条简单的数据转化为巨大的价值。爬虫程序若是借助于框架进行开发将更加便捷。在拥有框架之后,我们就不必担心爬虫的全部流程,而异常处理、任务调度等处理都汇集成在框架中。在将各个组件独立开来,定义成不同的模块所形成的框架之中进行开发,我们就只需对爬虫的核心逻辑部分进行设计,比如对网页界面数据的提取、下一步请求的生成等。如此一来,不仅能够提高开发的效率,而且能够使爬虫程序更加健壮,更省时。本文将对PySpider框架进行分析研究,并且在基于PySpider框架的基础上对网络爬虫进行实现。
目 录
1.绪论 1
1.1课题研究的背景和意义 1
1.2 国内外发展现状 2
1.2.1 网络爬虫技术发展历史 2
1.2.2 网络爬虫技术的现状和局限性 2
1.3 论文篇章结构 2
2.网络爬虫的工作原理及其相关技术的研究 4
2.1 网络爬虫的技术 4
2.1.1 网络爬虫的原理 4
2.1.2 网络爬虫的工作流程及数据抓取过程分析 5
2.2 会话和COOKIE 7
2.2.1会话 7
2.2.2 Cookie 7
2.2.3 会话和cookie对本课题的作用 8
2.3代理的基本原理 8
3. PYSPIDER框架的研究 9
3.1 PYSPIDER框架的介绍 9
3.1.1 PySpider框架介绍 9
3.1.2 PySpider与Scrapy的对比 9
3.2 PYSPIDER的组件分析 9
3.2.1 目录结构分析 9
3.2.2 PySpider的组件 10
3.3 PYSPIDER总体框架结构及运行流程 13
4. 基于PYSPIDER框架的网络爬虫的实现 15
4.1 测试环境 15
*好棒文|www.hbsrm.com +Q: ^351916072#
4.2 豆瓣影视信息的提取 15
4.2.1 网页分析 15
4.2.2 数据抓取 17
4.3 百度图片下载 19
4.3.1 网页分析 19
4.3.2 数据抓取 19
4.4 大量文章信息的爬取与分析 20
4.4.1 网页分析及数据爬取 21
4.4.2 数据清洗 23
4.4.3 数据分析 24
4.5 关键问题 31
4.5.1 登录与访问限制 31
4.5.2 反爬虫策略 32
5.网络爬虫系统的影响与效益 34
6. 总结和展望 35
参考文献 36
致谢 37
1.绪论
本章首先将说明爬虫的时代背景和我对其进行研究的背景,并且对研究的目的和意义进行阐述。其次,将对网络爬虫技术在国内外的研究现状做出介绍,以及介绍本课题所选用的相应技术。最后,将对本论文的主要工作内容和篇章结构进行阐述介绍。
1.1课题研究的背景和意义
在如今这个大数据时代,“大数据”这个词已经不仅仅只是一个空洞难以理解的词汇了,对于不同的人来讲它有这不同的意味。这两年来,关于“大数据杀熟”这个词频繁的出现在主流媒体上,引起了广泛的响应。因而“数据”不得不引起包括笔者在内的很多人的注意,再加上作为一个追星少女,如何才能快速的从多网站获取偶像的信息成了我发现PySpider框架的契机。这个一个由国人自己开发的,基于Python能够快速开发大量爬虫的PySpider框架,正好满足了我的需求。
在如今的时代,不比以前,各种信息相对不完善,且许多网站的发展受限,数量少体量小,查找各种信息也相对较易。现今,数据井喷,数据成为了未来世界发展的关键点,数据分析也就成为了解决各大行业各种问题的重要依据。而这些都依靠于数据的获取,而数据的获取在很大程度上依赖于网络爬虫的爬取。无论在哪个行业,用数据说话,是科学性的理性表现,是更为严谨的做法。因而为了这种理性选择,则很有必要建立一套数据体系,这种数据体系的主要工作就是基于对大量数据的抓取。因为数据为数据的分析应用服务,一切都必须基于采集大量的数据上,唯有对这些采集而来的大量数据形成为一定的数据规模,才能使数据分析结果具有科学性、全面性、准确性,这样的成果才具有价值,才能对各行业、各领域的规划与发展起到指引性的作用。
但,由于网络上的数据资源越发复杂与多样,对数据的准确获取造成了很大的难度,简单的爬虫程序已经无法适应现如今用户的需求,准确快速获取大量数据的愿望也渐渐遇到了各种瓶颈,效率越发低下。而使用基于Python的各种网络框架,不必担心爬虫程序的全部流程,简便高效,可以实现对指定数据精准地爬取与处理,从而使用户可以避开冗余信息,无需在不同站点之间频繁切换,使用户获取信息更简便,减少时间的开销。
因而,对PySpider框架及网络爬虫技术进行研究是顺应未来趋势的发展,通过学术研究,了解各种网络爬虫技术的发展和优缺点增加对网络爬虫技术的可靠性,是十分有必要的。
1.2 国内外发展现状
1.2.1 网络爬虫技术发展历史
网络爬虫是一种请求网站并提取数据的自动化程序,搜索引擎便是基于爬虫技术开发而来的。于20世纪90年代开始,网络爬虫技术就逐渐为许多计算机从业者开始注意,并从事研究开发。从九十年代初的雅虎始创,到九十年代末谷歌的诞生,再到后来各种论坛、博客、社交网站等各式各样的网站的层出不穷,加速了搜索引擎的发展。
1.2.2 网络爬虫技术的现状和局限性
随着科技的发展,需求的变化,人们不止满足于对文本信息的搜索,对其他类型的信息搜索的需求正在增长,而这样的需求使得网络爬虫不断发展,及至如今,该技术正趋于成熟。而在网络爬虫的开发过程中,Python语言成为了应用最为广泛的语言,其各种优秀的特点使得Python语言成为编写网络爬虫的首选。
目 录
1.绪论 1
1.1课题研究的背景和意义 1
1.2 国内外发展现状 2
1.2.1 网络爬虫技术发展历史 2
1.2.2 网络爬虫技术的现状和局限性 2
1.3 论文篇章结构 2
2.网络爬虫的工作原理及其相关技术的研究 4
2.1 网络爬虫的技术 4
2.1.1 网络爬虫的原理 4
2.1.2 网络爬虫的工作流程及数据抓取过程分析 5
2.2 会话和COOKIE 7
2.2.1会话 7
2.2.2 Cookie 7
2.2.3 会话和cookie对本课题的作用 8
2.3代理的基本原理 8
3. PYSPIDER框架的研究 9
3.1 PYSPIDER框架的介绍 9
3.1.1 PySpider框架介绍 9
3.1.2 PySpider与Scrapy的对比 9
3.2 PYSPIDER的组件分析 9
3.2.1 目录结构分析 9
3.2.2 PySpider的组件 10
3.3 PYSPIDER总体框架结构及运行流程 13
4. 基于PYSPIDER框架的网络爬虫的实现 15
4.1 测试环境 15
*好棒文|www.hbsrm.com +Q: ^351916072#
4.2 豆瓣影视信息的提取 15
4.2.1 网页分析 15
4.2.2 数据抓取 17
4.3 百度图片下载 19
4.3.1 网页分析 19
4.3.2 数据抓取 19
4.4 大量文章信息的爬取与分析 20
4.4.1 网页分析及数据爬取 21
4.4.2 数据清洗 23
4.4.3 数据分析 24
4.5 关键问题 31
4.5.1 登录与访问限制 31
4.5.2 反爬虫策略 32
5.网络爬虫系统的影响与效益 34
6. 总结和展望 35
参考文献 36
致谢 37
1.绪论
本章首先将说明爬虫的时代背景和我对其进行研究的背景,并且对研究的目的和意义进行阐述。其次,将对网络爬虫技术在国内外的研究现状做出介绍,以及介绍本课题所选用的相应技术。最后,将对本论文的主要工作内容和篇章结构进行阐述介绍。
1.1课题研究的背景和意义
在如今这个大数据时代,“大数据”这个词已经不仅仅只是一个空洞难以理解的词汇了,对于不同的人来讲它有这不同的意味。这两年来,关于“大数据杀熟”这个词频繁的出现在主流媒体上,引起了广泛的响应。因而“数据”不得不引起包括笔者在内的很多人的注意,再加上作为一个追星少女,如何才能快速的从多网站获取偶像的信息成了我发现PySpider框架的契机。这个一个由国人自己开发的,基于Python能够快速开发大量爬虫的PySpider框架,正好满足了我的需求。
在如今的时代,不比以前,各种信息相对不完善,且许多网站的发展受限,数量少体量小,查找各种信息也相对较易。现今,数据井喷,数据成为了未来世界发展的关键点,数据分析也就成为了解决各大行业各种问题的重要依据。而这些都依靠于数据的获取,而数据的获取在很大程度上依赖于网络爬虫的爬取。无论在哪个行业,用数据说话,是科学性的理性表现,是更为严谨的做法。因而为了这种理性选择,则很有必要建立一套数据体系,这种数据体系的主要工作就是基于对大量数据的抓取。因为数据为数据的分析应用服务,一切都必须基于采集大量的数据上,唯有对这些采集而来的大量数据形成为一定的数据规模,才能使数据分析结果具有科学性、全面性、准确性,这样的成果才具有价值,才能对各行业、各领域的规划与发展起到指引性的作用。
但,由于网络上的数据资源越发复杂与多样,对数据的准确获取造成了很大的难度,简单的爬虫程序已经无法适应现如今用户的需求,准确快速获取大量数据的愿望也渐渐遇到了各种瓶颈,效率越发低下。而使用基于Python的各种网络框架,不必担心爬虫程序的全部流程,简便高效,可以实现对指定数据精准地爬取与处理,从而使用户可以避开冗余信息,无需在不同站点之间频繁切换,使用户获取信息更简便,减少时间的开销。
因而,对PySpider框架及网络爬虫技术进行研究是顺应未来趋势的发展,通过学术研究,了解各种网络爬虫技术的发展和优缺点增加对网络爬虫技术的可靠性,是十分有必要的。
1.2 国内外发展现状
1.2.1 网络爬虫技术发展历史
网络爬虫是一种请求网站并提取数据的自动化程序,搜索引擎便是基于爬虫技术开发而来的。于20世纪90年代开始,网络爬虫技术就逐渐为许多计算机从业者开始注意,并从事研究开发。从九十年代初的雅虎始创,到九十年代末谷歌的诞生,再到后来各种论坛、博客、社交网站等各式各样的网站的层出不穷,加速了搜索引擎的发展。
1.2.2 网络爬虫技术的现状和局限性
随着科技的发展,需求的变化,人们不止满足于对文本信息的搜索,对其他类型的信息搜索的需求正在增长,而这样的需求使得网络爬虫不断发展,及至如今,该技术正趋于成熟。而在网络爬虫的开发过程中,Python语言成为了应用最为广泛的语言,其各种优秀的特点使得Python语言成为编写网络爬虫的首选。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/wljs/197.html