北京航空航天大学计算机学院 远航1617 小组

产品版本: Beta版本

产品名称:Crawling   is going on

文档作者:杨帆

文档日期:2013/12/24

1.   引言

1.1      编写目的

  编写本使用说明的目的是充分叙述本软件所能实现的功能及其运行环境,以便使用者了解本软件的使用范围和使用方法,

并为软件的维护和更新提供必要的信息。

1.2      参考资料

资料名称

作者

自己动手写网络爬虫

罗刚

Web数据挖掘

(Soumen Chakrabarti)查凯莱巴蒂

软件测试

肖汉

精通SQL Server   2008完全自学手册

金玉明

1.3      术语和缩写词

缩略语

全意

爬虫

一种自动获取网页内容的程序,是搜索引擎的重要组成部分

URL

中文名称为“统一资源定位符”,是互联网上标准资源的地址

过滤

去除网页中不符合需求的内容,例如广告等

线程

爬虫程序运行时的程序调度单位

2        软件概述

2.1      软件用途

  本软件用于自动获取网页内容,同时具有去广告,分类保存扒取到的文件,网页质量判定等功能。

是网上问答系统等搜索引擎的重要组成部分。

2.2      软件运行

  本软件运行在PC 及其兼容机上,使用WINDOWS 操作系统 ,需安装JDK以及JRE(建议使用最新版本)。

双击文件ThreadCrawler_final.jar运行软件。

2.3      系统配置

  本软件运行在PC 及其兼容机上,使用WINDOWS 操作系统,要求奔腾4以上CPU,512兆以上内存,

10G 以上硬盘。

2.4      软件结构


1.1      软件性能

  功能测试用例通过率达到94%。爬取的网页达到10^2数量级时,平均用时不超过1.5分钟。

  CPU占用率如下表:

序号

爬取数

CPU占用率(%

内存占用率(KB

1

10

2.28

174650

2

100

8.46

190878

3

1000

29.54

152768

可靠性,安全性,易用性均经过测试并达到测试要求。

1.2      输入、处理、输出

2.6.1   输入

1)     网络爬取过程开始的一个或多个源网址。

2)     预期抓取的网页数量。

2.6.2   处理

  程序将从源网址(输入1)开始依次爬取下一级链接或下一源网址队列中下一链接,爬取到预期爬取网页数量后(输入2)停止爬取。

  点击start键开始爬取。

  点击close键关闭软件。

2.6.3    输出

1)        已爬取的URL数;

2)        当前爬取URL;

3)        爬取进度;

4)        爬取状态;

5)        爬取的URL;

6)        本地File目录下爬取结果下载的文件内容,包含html等文件。

7)        数据库中保存文件的绝对路径、文件的下载地址及对应URL的网页编码与类型、对当前文件的下载时间、

    更新时间集、以及最后一次操作时间等信息。

8)        对于当前数据库中文件类型的统计,以饼状图的形式展示。

3          软件使用过程

3.1      软件安装

  将软件压缩包中的全部文件解压到本地。

3.2      运行说明

  本软件需运行在WINDOWS操作系统下,并需要安装最新版本的JDK和JRE。

  配置数据库到Windows(或Windows server)数据源中,数据库名为yuanhang。数据库中包括:被抓取网页的类型、

编码等信息;文件下载后在本地的存储路径;文件的下载时间记录、更新时间记录、最后一次更新记录。

  软件安装完成后,双击运行ThreadCrawler_final.jar文件进入软件操作界面。

3.3      控制输入

1)    运行软件出现主界面后,在主界面的select the file中选择源网址输入方式。若源网址只有一个,输入方式选择No,

   在URL seed中输入唯一源网址;若需爬取多个源网址,输入方式选择Yes,并在目录下test.txt文件中输入源网址队列。

   输入格式为:每个源网址占一行,回车换行。

2)    在主界面how much pages中输入想要抓取的网页数量。

3)    点击“start”按钮开始爬取。

3.4      输出文件

  在本地File路径下为爬取结果下载的文件内容,包含html等文件。

  在数据库中保存本地文件的绝对路径、文件的下载地址及对应URL的网页编码与类型、对当前文件的下载时间、

更新时间集、以及最后一次操作时间等信息。

3.5      输出报告

  在主界面中会显示已爬取的URL数、当前爬取URL、爬取进度、爬取状态、爬取的全部URL。

3.6      数据库文件分析

  点击主界面analyse键,可对当前数据库内文件类型以及数量信息进行统计,并以饼状图展示。

3.7      非常规过程

  如果出现不可能处理的问题,可以直接与远航1617 小组的技术支持人员联系团队博客:

  http://www.cnblogs.com/yuanhang1617

4        软件维护过程

4.1     源程序清单

本软件源程序全部位于default package包中,共包括9个文件:

ConnectServer.java

CraUi.java

DownLoadFile.java

HtmlParserTool.java

LinkFilter.java

LinkQueue.java

MyCrawler.java

Queue.java

Url.java


Beta版本软件使用说明的更多相关文章

  1. 【Beta】软件使用说明——致社长

    目录 社团公众号关联上"北航社团帮"小程序 为什么要关联上"北航社团帮"小程序: 如何进行关联: 小程序中的社长相关功能 如何认证成为社长 如何管理社员.增删管 ...

  2. Beta版软件使用说明

    1引言 1 .1编写目的 编写本使用说明的目的是充分叙述本软件所能实现的功能及其运行环境,以便使用者了解本软件的使用范围和使用方法,并为软件的维护和更新提供必要的信息. 1 .2参考资料 1 .3术语 ...

  3. Beta版本 为什么程序员总是分不清万圣节和圣诞节?因为 Oct 31 == Dec 25。

    Beta版本 软件的测试版本,经常在各类著名软件中的前期发布版本的后缀中可见,包括大名鼎鼎的windows系统,这个阶段的版本一直加入一些新的功能. 软件测试可分为alpha测试.beta测试和联合测 ...

  4. 第02组Beta版本演示

    组长博客 组名:十一个憨比 本组组员: 学号 姓名 分工 贡献比例 181700413 黄智 写Beta冲刺的四次博客,写评审表,写word,统筹规划 9% 131700309 林闽沪 代码实现,答辩 ...

  5. 第01组 Beta版本演示

    目录 1.1 本组成员 1.2 工作流程.组员分工.组员工作量比例 1.3 GitHub 项目链接 1.4 本组 Beta 冲刺站立会议博客链接汇总 1.5 燃尽图 1.6 原计划.达成情况及原因分析 ...

  6. 【软件工程】Beta版本演示

    团队信息 队名:女生都队 组长博客: 博客链接 成员 学号 史恩泽(组长) 031702122 施金海 031702121 阮君曦 031702116 陈银山 031702137 李季城 031702 ...

  7. PSP Daily软件beta版本——基于NABCD评论,及改进建议

    1.根据(不限于)NABCD评论作品的选题: 此软件的用户人群较为明确,即:用户(软件工程课上学生)记录例行报告.写每周PSP表格和统计的需求.潜在用户还有未来该课堂的学生和需要用PSP方法记录任务完 ...

  8. PSP Daily软件beta版本——基于spec评论

    题目要求: 每个小组评论其他小组beta发布作品的软件功能说明书. 试用(并截图)所有其他小组的beta作品,与软件功能说明书对比,评论beta作品对软件功能说明书的实现. 根据软件功能说明书,测试所 ...

  9. 第08组 Beta版本演示

    简介 组名:955 组长博客:点这里! 成员 031702329庄锡荣(组长) 031702309林晓锋 031702309侯雅倩 031702311陈珊珊 171709030吴珂雨 03170231 ...

随机推荐

  1. jQuery动态绑定事件(左右移动)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. IoC和AOP扩展

    一.构造注入 二.使用p命名空间注入属性值 三.注入不同数据类型 <?xml version="1.0" encoding="UTF-8"?> &l ...

  3. md5加密+盐方式二

    这类md5+盐加密是属于自定义盐值的简单方法! 1.导入架包 2.调用方法 DigestUtils.md5Hex(password);//加密方法 举例 方式一: password=DigestUti ...

  4. Mac下PHP的环境搭建

    * 前段时间手欠 ... 入手了一个二手的Macbook pro ! 配置挺高的 16款13寸的基本顶配了 ... 只差 硬盘不是1T的 ... 可以脑补一下配置了* 话说 不是所有程序猿都说 每个程 ...

  5. 第1天 Java基础语法

    Java基础语法 今日内容介绍 Java开发环境搭建 HelloWorld案例 注释.关键字.标识符 数据(数据类型.常量) Java开发环境搭建 Java概述 众所周知Java是一门编程语言,编程语 ...

  6. linux shell 字符串常用操作

    1.shell内置的字符串操作 表达式 含义 ${#string} $string的长度 ${string:position} string中,从位置$position开始提取字符串 ${string ...

  7. notpad++ 搭配 gcc

    notpad++ 搭配 gcc GCC 是 GNU 编译器套装的简称(GNU Compiler Collection),一套编程语言编译器,以 GPL 及 LGPL 许可证所发行的自由软件,也是 GN ...

  8. Python值集合操作

    list_l1 = [12,1,4,6,9,5,4,2,11] list_l1 = set(list_l1) print(list_l1,type(list_l1)) #集合也是无序的 list_2 ...

  9. Qt udp 主机和虚拟机无法互相广播

    描述: 主机和虚拟机可以ping通,port没被占用,虚拟机可以向主机广播,但是主机不能向虚拟机广播 原因: 虚拟机只配置了一个适配器,而主机有多个适配器,当虚拟机广播时,只能使用和主机连接的适配器, ...

  10. P2257 YY的GCD

    P2257 YY的GCD 题目描述 神犇YY虐完数论后给傻×kAc出了一题 给定N, M,求1<=x<=N, 1<=y<=M且gcd(x, y)为质数的(x, y)有多少对 k ...