定向网络爬虫 开题报告
更新时间:2024-06-16 19:52:01 阅读量: 综合文库 文档下载
- 网络爬虫技术推荐度:
- 相关推荐
山 东 科 技 大 学
本科毕业设计(论文)开题报告
题 目 网络爬虫
定向爬取?脚本之家?文本信息
学 院 名 称 信息科学与工程学院 专业班级 计算机科学与技术2012级2班 学生姓名 包志英 学 号 201201050201 指 导 教 师 赵中英
填表时间:二0一六年三月二十八日
设计(论文) 题目 工程设计 设计(论文) 类型(划“√”) 网络爬虫?定向爬取脚本之家文本信息 应用研究 开发研究 基础研究 √ 其它 一、 本课题的研究目的和意义 本课题的主要目的是设计面向主题的网络爬虫程序,同时需要满足的是具有一定的性能,要考虑到网络爬虫的各种需求。 网络爬虫主体网站的特性。对url进行构造。网络爬虫使用scrapy实现多线程,让爬虫具备更强大的抓取能力和灵活性。网络爬虫要实现对特定主题的爬取。网络爬虫还要完成信息提取任务,对于抓取回来的网页提取出来:新闻、电子图书、行业信息等。对网络爬虫的连接网络设置连接及读取时间,避免无限制的等待。研究网络爬虫的原理并实现爬虫的相关功能。 最终实现的网络爬虫应该能根据设定的主题,从构造的url进行一定数据爬取,并最终得到需要的数据 互联网是一个庞大的非结构化的数据库,将数据有效的检索并组织呈现出来有着巨大的应用前景。搜索引擎作为一个辅助人们检索信息的工具。但是,这些通用性搜索引擎也存在着一定的局限性。不同领域、不同背景的用户往往具有不同的检索目的和需求,通用搜索引擎所返回的结果包含大量用户不关心的网页。为了解决这个问题,一个灵活的爬虫有着无可替代的重要意义。 二、 本课题的主要研究内容(提纲) 本课题研究的内容是如何使网络爬虫灵活高效。 1.如何更具网站主体特性不同构造URL。 2.如何具备更强的抓取能力。 3.如何分辨重复的网页内容。 4.如何确定主题相关性。 5.对于对线程并发的处理。 6.对于缓存和并发请求的处理 7.对反扒机制的应对 8.对于网络时延等的处理。 9.对于数据的存储格式与形式 三、 文献综述(国内外研究情况及其发展) 对于网络爬虫的研究从上世纪九十年代就开始了,目前爬虫技术已经趋见成熟,网络爬虫是搜索引擎的重要组成部分。网络上比较著名的开源爬虫包括Nutch,Larbin,Heritrix。网络爬虫最重要的是网页搜索策略(广度优先和最佳度优先)和网页分析策略(基于网络拓扑的分析算法和基于网页内容的网页分析算法)。 国内外流行的爬虫技术相当多,很多人喜欢基于Python的,也有人喜欢用C#,很多人由于系统集成开发和跨平台的需要倾向于java,我跟喜欢用Python。 就原理来说,爬虫组件都是差不多的,无头浏览器,最能够说明爬虫的特性,它们被设计创造出来,大部分情况是用于自动化测试的。 基于socket的httpclient功能简单,性能强大,特别是在高并发的情况下,而被大家所青睐,特别是搜索引擎中,如果抓取静态页面,httpclient非常适合。 当遇到ajax加载的信息,就需要javascript效果渲染的时候,httpclient就不行了,htmlunit是基于httpclient加入Rhino引擎实现js渲染的无头浏览器,当然包含了httpclient的特性,然而,由于内存泄露的问题,高并发的状态下,并不能很稳定的工作,内存消耗随着程序的运行而不断增大,直到达到jvm分配的上限而崩溃。很多时候,你只能做个权衡,每个webclient使用若干次后就把它回收,然后重新启动一个,这非常影响性能。Rhino对于javascript的支持并不好,实际使用中,会发现各种Exception,很多时候会导致无法渲染出想要的结果,这个htmlunit的又一大缺陷。随着版本的更新,能够渐次解决一些问题,但是好的程序员,还是应该自己读源码来尝试解决问题。
Phantomjs相比于htmlunit,对于js的支持更接近真实的浏览器,但是并发性能差,通过java的exec调用系统命令来启动,更加降低了性能。
此外主流的浏览器都提供了相应的抓取支持,selenium可谓是一个集大成者,包含了上述的所有组件,以WebDriver的形式,适配各种爬虫组件,你可以用它操控浏览器自动抓取,当然,并发和性能的问题依然存在。
爬虫开发的主要问题是性能和反封锁。很多时候,采用高并发高频率抓取数据是可行的,前提是目标站点没有采用任何反爬措施(访问频率限制、防火墙、验证码……);更多时候,有价值的信息,一定伴随着严格的反爬措施,一旦ip被封,什么组件都没戏了。你不得不维护一个代理IP池来解决这个问题,当然,这也带来了代理ip稳定性和速度的问题,这些问题都是无法回避的问题,我们需要针对具体的情况,采用对应的措施,以最大限度的完成爬虫爬取任务。
目前,爬虫的需求呈爆炸式增长的趋势,这是当前各种互联网创新和大数据时代的新常态。火车和八爪鱼等团队看到了这一点,并率先开发了相对完备的爬虫产品,很多用户都在使用,但是更多的用户希望直接把爬虫抓取任务外包出去,因为他们不懂技术,工具的使用需要逾越技术的鸿沟,大部分用户并没有这个逾越鸿沟的打算。我相信像猪八戒这样的技术外包平台会活的越来越好,我也相信各个技术门类会不断聚集,形成相对独立的社区,P2P的社区平台将提供爬虫开发者和爬虫需求者更加通畅的交流渠道。
目前,淘宝等平台上出现很多爬虫服务商,如
http://item.taobao.com/item.htm?spm=a230r.1.14.4.10ZOWj&id=42659198536&ns=1&abbucket=6#detail,这种定制开发的服务,增加了服务商的成本,服务往往是一次性的,满足了一个用户的需求,然而具有相似需求的用户,却很难有机会找到这个服务商,这就是为什么我们需要爬虫信息交流的平台。
我有意建立这样的平台,不管是微博、微信公众号、文章,还是政府门户的信息公开,或者门户网站、新闻社区等媒体,或者其他领域如金融的数据,都可以在平台上找到,也很容易实现供应和需求者的相互匹配。 然而,对于这其中的法律问题,特别是知识产权问题,不甚明了,除了robots协议,很多数据网站都会另外声明其数据使用规范,同时,如大众点评等网站提供的API很难满足分析的需要,就形成了数据被独占而其价值得不到有效开发的不合理现象。 大数据时代,对大数据的分析应当成为一个行业,数据拥有者应该开放数据的分析接口,让数据的价值释放,而爬虫开发者,很多时候是数据分析者(最起码是个数据清洗和筛选者)。他们蒙上了一层神秘面纱,带着一丝黑客气息,法律应当给他们更大的生存空间,让这个有价值的行业创造更大的价值。 四、 拟解决的关键问题 使网络爬虫高效灵活, 在主题网站中尽量全面的爬取信息,并且 能够自动构造URL,递归调用自身,开启多线程快速的爬取,准确提取有效信息,存储到数据库,对于网络延迟的处理,并且能够开启HTTPCHACHE,极大限度的提高爬取速度,伪造代理信息,表单等,让目标网站,认为你是安全的,整合数据信息,并以json格式存储至Mongo,方面各个平台使用,通过脚本程序,迁移到Mysql为依赖关系较强的项目使用,具备可视化显示,以网页的形式有好的显示数据,并提供简单的搜索功能,能将数据简单分类,智能推荐。
正在阅读:
定向网络爬虫 开题报告06-16
工程施工现场扬尘控制要点和控制措施12-28
2013年高考阅读试题《牛铃叮当》04-10
经典防抖动键C51源程序04-16
IP培训.DC010001 MPLS协议原理 ISSUE1_109-02
育种学实验报告12-03
蒙牛之道10-20
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 爬虫
- 开题
- 定向
- 报告
- 网络
- 中小企业人才战略
- 外国银行制度与业务
- 洪水资源化
- 2009-2010北京市朝阳区高三一模文科试卷
- U肋的设计
- 2-1员工调薪述职报告
- 2014高考英语核按钮 - 阅读理解长难句分析技巧
- 最新北师大版 小学五年级数学上册全册教案 - 图文
- 新标准大学英语综合教程4(unit1-8)课后答案及课文翻译
- 蒂森K100门机CTU2板电气调试 - 图文
- 暨南大学
- §7.6一元一次不等式组(2)
- 登高车使用安全技术交底 - 图文
- 内控成本人力资源
- 扩散炉工艺文件
- χγ 辐射剂量率监测作业指导书(通用)
- 当代大学生受挫能力的调查报告
- 慧律法师楞严经讲座全套第8套七大本如来藏,妙真如性
- 再生水厂操作规程20160220
- 小学一年级《心理健康》(第二学期9-16课)(南京大学出版社)教