开题报告如何写
注意点
1.一、对指导教师下达的课题任务的学习与理解 这部分主要是阐述做本课题的重要意义 2.二、阅读文献资料进行调研的综述
这部分就是对课题相关的研究的综述 落脚于本课题解决了那些关键问题
3.三、根据任务书的任务及文件调研结果,初步拟定执行实施的方案(含具体进度计划)
这部分重点写具体实现的技术路线 方案的具体实施方法和步骤了,具体进度计划只是附在后面的东西不是重点
南京邮电大学通达学院毕业设计(论文)开题报告
题 目 学生姓名 徐亚洲 基于python的网络爬虫系统的设计与实现 班级学号 12003426 专业 软件工程 一、对指导教师下达的课题任务的学习与理解 随着网络的快速发展和广泛应用,大数据时代的到来,网络就像一个巨大的数据宝库,如何快速获取其中的数据资源成为亟待完成的新需求。然而网络上的信息资源大多是无组织并且动态变化的,光靠管理员手工去管理,很难将这些庞大,繁杂的数据进行有效的保存和利用,这就促使了网络爬虫技术的兴起。 网络爬虫源自Spider(或Crawler、robots)等的意译。网络爬虫的定义有广义和狭义之分,狭义的定义为:利用标准的http协议,根据超链接和Web文档检索的方法遍历万维网信息空间的软件程序。广义的定义为:所有能利用http协议检索Web文档的软件都称之为网络爬虫。 网络爬虫又被称为做网络蜘蛛、网络机器人,主要用于网络资源的收集工作。是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。 网络爬虫已经发展了很多年,并且搜索引擎也是爬虫的一种应用,通过搜索引擎能够更快速的获得有用的数据和信息。但是,一些通用性的搜索引擎也存在着一定的局限性,通用搜索引擎返回的结果可能包含了大量用户不关心的网页内容,而且通用搜索引擎有限的服务器资源与无限的网络资源之间存在的矛盾进一步加深,还有,就是通用搜索引擎不能支持给据语义的信息提出的查询和搜索。所以学习网络爬虫有很大的意义。因此,本课题基于Python编写基本的爬虫系统,用于网路爬虫的入门,为以后的爬虫学习奠定基础。 所以,对于本课题我设计并实现以个关于入门爬虫的系统----基于python的豆瓣网爬虫系统。 二、阅读文献资料进行调研的综述 网络爬虫是一个功能很强大的自动提取网页的程序,它为搜索引擎从万维网下载网页,是搜索引擎的重要组成部分。它通过请求站点上的html文档访问某一个站点。它遍历Web空间,不断从一个站点移动到另一个站点,自动建立索引,并加入到网页数据库中。网络爬虫进入某个超级文本时,利用html语言的标记结构来搜索信息,及获取指向其他超级文本的url地址,可以完全不依赖于用户的干预实现网络上的自动“爬行”和搜索。 本课题需要用MySQL来存取从网页上抓去到的数据,文献[1]讲述了MySQL数据库的入门知识,该,学习该文献能够做到MySQL数据库的基本存取操作,满足本课题的实际操作要求。文献[2] 和文献[3]讲述了Python的入门教程和Python的编程入门,通过学习文献可以了解Python的基本语法和Python的基本编程方法,对于本课题程序编写,能够拥有大概的思路和想法。文献[4]中提供了开发了一款支持并行的微博数据抓取工具的基本思路,该工具可以实时抓取微博中指定用户的粉丝信息、微博正文等内容;该工具利用关键字匹配技术,匹配符合规定条件的微博,并抓取相关内容。并且支持并行抓取信息。并行爬虫拥有较好的加速比,可以快速抓取数据。 文献[5] 基于信息数据分析的微博研究综述[J];研究微博信息数据的分析,在这类研究中,大多数以微博消息传播的三大构件---微博消息、用户、用户关系为研究对象。以微博消息传播和微博成员组织为主要研究内容,目的在于发祥微博中用户、消息传博、热点话题、用户关系网络等的规律。基于微博信息数据分析的研究近年来在国内外都取得了很多成果,掌握了微博中的大量特征。该文献从微博消息传播三大构件的角度,对当前基于信息数据分析的微博研究进行系统梳理,提出微博信息传播三大构件的概念,归纳了此类研究的主要研究内容及方法。
对于大多用户提出的与主题或领域相关的查询需求,传统的通用搜索引擎往往不能提供令人满意的结果网页。为了克服通用搜索引擎的以上不足,提出了面向主题的聚焦爬虫的研究。文献[6]综述了聚焦爬虫技术的研究。其中介绍并分析了聚焦爬虫中的关键技术:抓取目标定义与描述,网页分析算法和网页分析策略,并根据网络拓扑、网页数据内容、用户行为等方面将各种网页分析算法做了分类和比较。聚焦爬虫能够克服通用爬虫的不足之处。
文献[7]首先介绍了网络爬虫工作原理,传统网络爬虫的实现过程,并对网络爬虫中使用的关键技术进行了研究,包括网页搜索策略、URL去重算法、网页分析技术、更新策略等。然后针对微博的特点和Ajax技术的实现方法,指出传统网络爬虫的不足,以及信息抓取的技术难点,深入分析了现有的基于Ajax的网络爬虫的最新技术——通过模拟浏览器行为,触发JavaScript事件(如click, onmouseover等),解析JavaScript脚本,动态更新网页DOM树,抽取网页中的有效信息。最后,详细论述了面向SNS网络爬虫系统的设计方案,整体构架,以及各功能模块的具体实现。 面向微博的网络爬虫系统的实现是以新浪微博作为抓取的目标网站。结合新浪微博网页的特点,通过模拟用户行为,解析JavaScript,建立DOM树来获取网页动态信息,并按照一定的规则提取出网页中的URL和有效信息,并将有效信息存入数据库。本系统成功的实现了基于Ajax技术的网页信息的提取。
文献[8]引入网页页面分析技术和主题相关性分析技术,解决各大网站微博相继提供了抓取微博的API,这些API都有访问次数的限制,无法满足获取大量微博数据的要求,同时抓取的数据往往很杂乱的问题。展开基于主题的微博网页爬虫的研究与设计。本文的主要工作有研究分析网页页面分析技术,根据微博页面特点选择微博页面信息获取方法;重点描述基于“剪枝”的广度优先搜索策略的思考以及设计的详细过 程,着重解决URL的去重、URL地址集合动态变化等问题;研究分析短文本主题抽取技术以及多关键匹配技术,确定微博主题相关性分析的设计方案;最后设计 实现基于主题的微博网页爬虫的原型系统,实时抓取和存储微博数据。本文研究的核心问题是,根据微博数据的特点设计一种基于“剪枝”的广度优先搜索策略,并 将其应用到微博爬虫中;同时使用微博页面分析技术使得爬虫不受微博平台API限制,从而让用户尽可能准确地抓取主题相关的微博数据。 通过多次反复实验获取原型系统实验结果,将实验结果同基于API微博爬虫和基于网页微博爬虫的抓取效果进行对比分析得出结论:本文提出的爬行策略能够抓取 主题相关的微博数据,虽然在效率上有所降低,但在抓取的微博数据具有较好的主题相关性。这实验结果证明本论文研究的实现方案是可行的。
文献[9]阐述了基于ajax的web应用程序的爬虫和用户界面状态改变的动态分析的过程和思路。文献[10]对于全球社交网络Twitter,设计并实现了,一个爬虫系统,从另一个角度阐明了Python在编写爬虫这个方面的强大和快速。仅仅用少量的代码就能实现爬虫系统,并且再强大的社交网站也可以利