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. 移动设备页面高度不足时min-height 的尴尬处理

    移动设备页面高度不足时min-height 的尴尬处理 在做html5的页面时,经常遇到页面内容太少撑不起来整个手机屏幕的高度. 我们经常使用min-height来处理,比如min-height:56 ...

  2. jQuery最佳编程实践

    加载jQuery 1.坚持使用CDN来加载jQuery,这种别人服务器免费帮你托管文件的便宜干嘛不占呢.点击查看使用CDN的好处,点此查看一些主流的jQuery CDN地址. <script t ...

  3. java 的SYSTEM类【转】

    java 的SYSTEM类[转] Posted on 2009-12-03 16:46 火之光 阅读(728) 评论(0) 编辑 收藏 System类代表系统,系统级的很多属性和控制方法都放置在该类的 ...

  4. React学习之一:React初探

    一,React简介 React是由Facebook和Instagram开发的一套创建用户界面的JavaScript库.许多人认为React是MVC中的V. React创建的目的是为了:构建数据随时会改 ...

  5. 第一零五天上课 PHP TP框架下分页

    控制器代码(TestController.class.php) <?php namespace Home\Controller; use Home\Controller\EmptyControl ...

  6. Objective c, +load, +initialize 方法

    +load() 当类被加载入程序的时候会执行+load方法 +initialize() 当类第一次被使用的时候会执行+initialize方法 这两个方法都只会被执行一次.

  7. SQL 2012 alwayson设置只读路由

    ALTER AVAILABILITY GROUP [sqlmaxiangqianbd]  MODIFY REPLICA ON   N'maxiangqian1' WITH   (SECONDARY_R ...

  8. app.js ejs 转换为html

    var express = require('express');var path = require('path');var favicon = require('serve-favicon');v ...

  9. ORA-01704: string literal too long

    update mkt_page_links set longdescription = ' {some html text > 4000 char} ' where menuidno = 310 ...

  10. MVC dirname(——FILE——)

    1.MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数据.界面显示分离的方法组织 ...