Need

我们小组的研究课题是编写一个更快捷,更安全的爬虫软件,编写时会应用到学长的部分代码并在其基础上完善创新。

初步阅读了学长们的博客上面的几个版本的测试情况和源代码,发现学长们在实现基础功能的条件下,增加了一些附加功能,包括对广告的进一步的过滤,分类保存爬取到的文件,已经网页质量的初步判定功能。

经过和组员们的初步讨论,我们决定在以下方面进行改进和完善:

1.对网页质量进行更优化的判定:

学长们对于网页质量的判定并不够完善,可以新增一些判断条件。例如用户可能关心于网页产生和更新的时间,以及网页容量的大小。只根据关键字出现频率进行判定并不够理想

2.增强代码的实际可用性:

通过改善代码结构,提高代码效率,减少爬取所用时间,增强用户体验。

3.增加爬取网页类型,完善相关功能:

学长们最终实现的网页类型并不全面,并且还存在着一些bug。我们希望能够进一步优化完善这方面的内容。

Approach

1.增加对网页容量的分析以及网页相关时间信息的判定来进一步提高抓取页面的质量

除了关键字频率统计之外,进一步引入页面字符数和网页产生和更新时间等判断条件,综合进行排序,最终得出相对较好的抓取结果。

2.优化抓取算法和存取方式,提高代码效率

相关细节暂未确定。

3.增加可抓取的网页类型,并完善域名等方面的相关代码

通过对于学长相应代码的研读和改进,完善相应功能。

Benefit

1.进一步优化了抓取页面的质量,增强用户体验,使得软件实际效率更加优秀。

2.使得代码运行更高效,用户等待时间更少,同样增强了用户体验。

3.进一步丰富了抓取内容,使得用户能够得到更加全面完整的信息。

Competitors

网络爬虫的爬行具有重复性, 将Web动态变化的规律与先前搜索的统计结果相结合, 以提高价值计算的准确性, 是一个值得研究的问题。降低网络蜘蛛在训练、搜索过程中的计算复杂性, 也是有待进一步研究的问题。目前的网络爬虫通常采用固定的搜索策略, 缺乏适应性, 如何提高网络爬虫的自适应性有待进一步研究。

以下几点将是我们的爬虫着重处理的点,同时也是我们的竞争力所在:

1.覆盖率

网络爬虫的首要目标是抓取互联网上所需的信息。因此,有价值的信息是否都收录,收录的比例(即覆盖率)是网络爬虫的基本评价指标。我们的爬虫会增加对于各种链接的筛选力度,增强覆盖率。

2.时效性

用户对搜索引擎的查询要求越来越高,其中重要的一点就是查询时效性,即事件发生并在互联网上传播后(以新闻、论坛、博客等各种形式),用户需要通过搜索引擎尽快能检索到相应内容。而索引的前提是收录,因此需要网络爬虫尽快的抓取互联上最新出现的资源。对于我们的爬虫而言,我们将会提高其检索度,争取在时效性上更进一步。

3.重复率

互联网上重复的内容很多,如何尽早的发现页面重复并消除之,是网络爬虫需要解决的问题。 除转载导致的重复外,重复总能体现为各种不同的模式,站点级重复,目录级重复,CGI级重复,参数级重复等等。及早发现这些模式并进行处理,能节省系统的存储、抓取、建库和展现资源。

Delivery

软件制作完毕,推广至关重要,软件做的再好,没有人知道也是白搭,作为程序员,很多人都是重技术轻推广,这就导致了一些优良共享软件并没有为作者带来好的回报。我们制定了以下策略,希望能在推广上做出一些成绩:

1.在各大软件网站发布我们的软件,如华军软件园、天空软件园、360软件宝库等等,对于小型下载网站,不用去理会,原因有二,一是这些软件园会自动去转载大软件站的软件,二是很多小网站的发布渠道不畅。随着网络的迅速发展,万维网成为大量信息的载体,如何有效地提取并利用这些信息成为一个巨大的挑战,所以对网络爬虫方面的软件需求会不断增加。我们对目前网络上同类型网络爬虫工具进行调研,将他们的功能情况与我们进行对比,并统计了他们的发布情况后,我们估计我们发布后一周的用户量会达到0.1千左右

2.做出我们的官方网站,这是很有必要的,因为发布我们也非常需要自主来推广,这个网站还兼具搜集用户的信息反馈的功能,更重要的是,共享软件重在服务,我们需要依靠这个网站来对我们的用户提供技术支持等服务。

3.广告推广,我们的团队组成决定了我们肯定没有实力去大网站做推广,所以针对这种情况,我们有更合适的方法,那就是寻找到有针对性的小网站,这些网站的用户流量不大,但是其有效用户量的比率很大,那么我们的推广就会是成功的。

关于网络爬虫项目的项目建议(NABCD)的更多相关文章

  1. 项目需求分析与建议-NABCD模型

    N(Need 需求) 首先我们的创意解决了现有阶段学校查空余教师的问题,充分解决了同学们上自习却找不到教室的苦衷,同时也会适当的拓展一些适当的学习计时功能或者每日一语等等,来帮助同学们来控制好学习时间 ...

  2. 项目需求分析与建议——NABCD模型

    特点一:旧物再利用N:需求:在我们的校园生活中,会遇到许多自己用不到的东西例如,学过的课本.废置的闲置物品等,这些"废物"往往占据着许多空间却不能够发挥自身的价值,通过我们的校园二 ...

  3. 团队项目作业:利用NABCD模型进行竞争性需求分析

    NABC正是这样的一套框架,当你试图提出一项崭新的提案之际,它能够提供四个思维基点,令你的商业策划具备天马行空的基础. 具体来说,NABC是四个关键词的首字母缩写- Need(需求)-现在市场上未被满 ...

  4. 【网络爬虫】【java】微博爬虫(一):小试牛刀——网易微博爬虫(自定义关键字爬取微博数据)(附软件源码)

    一.写在前面 (本专栏分为"java版微博爬虫"和"python版网络爬虫"两个项目,系列里所有文章将基于这两个项目讲解,项目完整源码已经整理到我的Github ...

  5. C语言Linix服务器网络爬虫项目(二)项目设计和通过一个http请求抓取网页的简单实现

    我们通过上一篇了解了爬虫具体要实现的工作之后,我们分析得出的网络爬虫的基本工作流程如下: 1.首先选取一部分精心挑选的种子URL: 2.将这些URL放入待抓取URL队列: 3.从待抓取URL队列中取出 ...

  6. 智普教育Python培训之Python开发视频教程网络爬虫实战项目

    网络爬虫项目实训:看我如何下载韩寒博客文章Python视频 01.mp4 网络爬虫项目实训:看我如何下载韩寒博客文章Python视频 02.mp4 网络爬虫项目实训:看我如何下载韩寒博客文章Pytho ...

  7. Linux企业级项目实践之网络爬虫(1)——项目概述及准备工作

    我们在学习了Linux系统编程之后,需要一些实战项目来提高自己的水平,本系列我们通过编写一个爬虫程序,将我们学习的知识进行综合应用,同时在实现项目的过程中逐渐养成一些有用的思维方式,并具有初步的软件开 ...

  8. Python即时网络爬虫项目启动说明

    作为酷爱编程的老程序员,实在按耐不下这个冲动,Python真的是太火了,不断撩拨我的心. 我是对Python存有戒备之心的,想当年我基于Drupal做的系统,使用php语言,当语言升级了,推翻了老版本 ...

  9. Python即时网络爬虫项目: 内容提取器的定义(Python2.7版本)

    1. 项目背景 在Python即时网络爬虫项目启动说明中我们讨论一个数字:程序员浪费在调测内容提取规则上的时间太多了(见上图),从而我们发起了这个项目,把程序员从繁琐的调测规则中解放出来,投入到更高端 ...

随机推荐

  1. php标记,变量,常量

    php标记 语法:有4种书写格式 1.<?php ... ?>  强烈推荐使用. 如果当前 php的代码段,是整个文档的最后一段,可以省略结束标记?(建议省略) 每句语句都要以分号;结束. ...

  2. 为什么C++中空类和空结构体大小为1?(转载)

    原文链接:http://www.spongeliu.com/260.html 对于结构体和空类大小是1这个问题,首先这是一个C++问题,在C语言下空结构体大小为0(当然这是编译器相关的).这里的空类和 ...

  3. 【转】WPF 窗体淡入淡出动画

    第一种 <Window.Triggers> <EventTrigger RoutedEvent="Window.Loaded" > <BeginSto ...

  4. [JavaScript 随笔] 垃圾回收

    在 JavaScript 中,由于垃圾回收是自动进行的,所以人们在编码时可能不太会注意这方面.但事实是,一些 webapp 在使用一段时间后,会出现卡顿的现象,特别是那些单页应用,包括 WebView ...

  5. 【EF学习笔记09】----------使用 EntityState 枚举标记实体状态,实现增删改查

    讲解之前,先来看一下我们的数据库结构:班级表 学生表 如上图,实体状态由EntityState枚举定义:Detached(未跟踪).Unchanged(未改变).Added(已添加).Deleted( ...

  6. JavaScript 基础(七) 箭头函数 generator Date JSON

    ES6 标准新增了一种新的函数: Arrow Function(箭头函数). x => x *x 上面的箭头相当于: function (x){ return x*x; } 箭头函数相当于匿名函 ...

  7. Python 前端之JQuery

    查找: 选择器 筛选器 操作: CSS 属性 文本 事件: 优化 扩展: Form表单验证 Ajax: 偷偷发请求 www.php100.com/manual/jquery http://blog.j ...

  8. exports 和 module.exports 的区别

    https://cnodejs.org/topic/5231a630101e574521e45ef8 //一句话总结:exports是对module.exports的引用,require()返回的是 ...

  9. 各种音视频编解码学习详解 h264 ,mpeg4 ,aac 等所有音视频格式

    编解码学习笔记(一):基本概念 媒体业务是网络的主要业务之间.尤其移动互联网业务的兴起,在运营商和应用开发商中,媒体业务份量极重,其中媒体的编解码服务涉及需求分析.应用开发.释放 license收费等 ...

  10. 在MS SQLSERVER中如何最快的速度清空所有用户表的数据

    有时候我们需要清空数据库中所有用户表的数据,如果一张表一张表的清空的话,遇到一个庞大的数据系统估计得崩溃了.  用游标加上用变量来引用表名就可以做到这一点. 用变量来引用表名对表操作可以用在存储过程中 ...