网络爬虫
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
摘要 (1)
关键词 (1)
Abstract (1)
Key words (2)
1 Python语言介绍 (2)
2 网络爬虫的定义及分类 (3)
2.1 网络爬虫的定义 (3)
2.2网络爬虫的分类 (3)
2.3爬虫的搜索策略 (4)
2.3.1广度优先策略 (4)
2.3.2深度优先策略 (4)
3简单爬虫架构 (4)
3.1爬虫调度器 (5)
3.2 URL管理器 (5)
3.2.1 URL管理器工作流程 (5)
3.2.2 URL管理器实现方式对比 (5)
3.3网页下载器 (6)
3.4网页解析器 (6)
4 爬虫的运行流程及实现 (7)
4.2爬虫程序设计及运行 (7)
4.2.1 爬虫总调度程序 (7)
4.2.2 URL管理器程序 (8)
4.2.3 网页下载器程序 (8)
4.2.4 网页解析器程序 (8)
4.2.5 网页输出器程序 (8)
5结果分析展望 (9)
5.1运行结果及分析 (9)
5.2总结与展望 (9)
致谢 (9)
参考文献 (10)
附录12
基于Python的网络爬虫设计
通信工程专业学生
指导教师
摘要:随着网络技术的发展,一方面网络上拥有越来越多的信息供人们进行选择,另一方面使人们在网络上搜集信息时为不能快速精准的获取自己想要的信息而感到苦恼。从而针对有关特定主题的网络爬虫应时而生。本课题是为人们人们可以快速、大量的获取自己想要的信息而对网络爬虫进行的研究。首先定义了网络爬虫的意义和研究的目标;然后对近年来国内外有关爬虫的研究方法和技术进行分析;比较各种爬虫方法的优缺点;对网络爬虫的流程图进行设计得到到网络爬虫的简单架构图;分析介绍各个模块的功能,对模块进行对比分析;编写程序代码,执行并调试程序,对结果进行分析总结。最后对未来有关爬虫技术发展研究进行展望。
关键词:网络爬虫 python语言 URL 互联网
Based on the Python web crawler design
Student majoring in Communication engineering Name JiRuijuan
Tutor ZhouZili
Abstract:With the development of network technology, On the one hand, on the network have more and more information for people to choose , On the other hand, people ofen fell upset for can not collect information fastly and accuratly on the internet.Thus a web crawler about a particular topic should be formed to solve this probelom. This topic is abot studying of web crawler so that people can access the information what they want rapidily and largely.Firstly, the meaning of web crawler and the research goal are defined;secondly,the relevant research methonds and techniques of the crawler which from home and abroad recent years are analyzed;And then the advantages and disadvantages of all kinds of crawler method are compared and analyzed.The
flowchart of web crawler are designed and get the simple architecture diagram of web crawler;Analysis and introduces the function of each module and compare the adwantages of them;And then write the program code , Implement and debug program, and analyze the results.Finally,the paper points out the future about the crawler technology development research.
Key words: web crawler;python language;URL;Interne
引言:随着互联网技术的发展,网络上的信息呈现爆炸式的增长,人们在可以自由从网上获取信息的同时也时常为难以在短时间搜索自己想要的信息而感到苦恼从而对互联网进一步的发展提出了新的要求。为了给用户提供更好的上网体验,网络爬虫顺势而生,网络爬虫可以根据特定主题进行个性化搜索。主题网络爬虫可以快速的爬取和采集大量的和预先定义好的与主题有关的网页。这类爬虫能够通过对整个网页按主题进行分块采集,然后将不同块的采集信息整合到一起,从而提高整个网页的采集信息覆盖率和页面的利用率。爬虫的性能指标有三个:规模的大小,只有搜索规模达到一定的数量级,搜索出的结果才能更好的满足客户的需求;性能,网络爬虫必须在用户的时间内完成对目标网络的的信息的搜集和结果反馈;搜索的质量,要求能够过滤掉一些无用信息的网页,比较准确的返回网络用户想要得到的结果。爬虫的工作原理非常简单即:从给定的一个种子URL集合中获取一个URL下载网页,再从网页中抽取出全部的URL和得到有价值数据,然后将新得到的URL添加到待爬取URL队列中,再从中抽取另一个URL。重复以上步骤直到达到预先设定的爬虫的停止标准为止[1][2]。
1 Python语言介绍
Python[3]是一种脚本语言,其语言核心包括文件、列表数字、字典、字符串等常见类型的函数。Python具有大量和丰富的库函数,其标准库中还提供了文本处理、图形系统、系统管理、xml处理、网络通信、数据库接口等额外功能从而Python可以进行各种工作包括密码系统、正则表达式、图形用户界面、文档生成、HTML、XML、网页浏览器、单元测试、数据库等其他和系统相关的操作。Python被称为“功能齐全”语言。Python有很多免费的第三方库,使其功能更加强大。Python是开放源码软件之一,具有可移植性在包括Windows、OS/2、Linux、FreeBSD、QNX、VMS、AROS、Palm OS等大量平台。Python具有可扩展性、可嵌入性。Python 具有良好的可阅读性,采用空白符强制进行语句缩进使代码简洁、优雅、能够用各个模块把各种语言连接起来,有胶水语言之称。Python中的urllib模块的urlopen的方法可以轻松打开某网页,用read方法可以读取网页的内容,它re模块的findall 正则匹配方法可以匹配出网页中的自己想要的一些表达形式有规律的内容如一些网络链接。基于Python的强大功能本网络爬虫设计采用Python作为编程语言。