北京航空航天大学计算机学院 远航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. 关于linux‘RedHat6.9在VMware虚拟机中的安装步骤

    redhat支持多种安装方式:光盘安装,硬盘安装和网络安装等,可以根据个人的实际情况来选择.我在这里选择的是光盘安装的方式安装RHEL6.9.(以下简称6.9) 1.首先准备好6.9的光盘镜像,在安装 ...

  2. TeamViewer13个人版使用中提示为商用版导致无法使用

    前言:由于使用teamviewer个人免费版较频繁,被软件识别到不能再继续免费使用,无奈没有多余的资金进行购买正版软件, 通过鼓捣得到如下继续免费使用方案,整理下来以备不时之需,也可以被有同此困惑的朋 ...

  3. Git命令行和Xcode结合使用(我来告诉你这行代码谁写的)

    现在一直使用Git来管理代码,对于有强迫症的我来说,依旧选择了命令行,下面这段话可以更好的解释我为什么喜欢使用终端敲命令. There are a lot of different ways to u ...

  4. django的render的特殊用法

    以前都是将模板渲染好, 传输到前端, 但是现在前后端分离了, 模板渲染引擎还有用, 而且很好用. 比如在渲染一个表格的时候, 每一行都有两个操作按钮, 并且这个按钮上是有a标签的 你可以使用字符串拼接 ...

  5. TCC : Tiny C Compiler (2018-2-6)

    饭墙下载,有缘上传: https://files.cnblogs.com/files/bhfdz/tcc-0.9.27-win32-bin.zip https://files.cnblogs.com/ ...

  6. Hbase 表的Rowkey设计避免数据热点

    一.案例分析 常见避免数据热点问题的处理方式有:加盐.哈希.反转等方法结合预分区使用. 由于目前原数据第一字段为时间戳形式,第二字段为电话号码,直接存储容易引起热点问题,通过加随机列.组合时间戳.字段 ...

  7. Python学习笔记五:字符串常用操作,字典,三级菜单实例

    字符串常用操作 7月19日,7月20日 ,7月22日,7月29日,8月29日,2月29日 首字母大写:a_str.capitalize() 统计字符串个数:a_str.count(“x”) 输出字符, ...

  8. 关于MySQL的锁机制详解

    锁概述 MySQL的锁机制,就是数据库为了保证数据的一致性而设计的面对并发场景的一种规则. 最显著的特点是不同的存储引擎支持不同的锁机制,InnoDB支持行锁和表锁,MyISAM支持表锁. 表锁就是把 ...

  9. P1208 [USACO1.3]混合牛奶 Mixing Milk

    P1208 [USACO1.3]混合牛奶 Mixing Milk 题目描述 由于乳制品产业利润很低,所以降低原材料(牛奶)价格就变得十分重要.帮助Marry乳业找到最优的牛奶采购方案. Marry乳业 ...

  10. UpdateLog

    2014-10-20 增加数据适配器,使支持多数据库类型2015-01-08 增加没有主键ID的抽象类,使能自义主键字段实现MODEL 增加虚拟字段转换,将指定函数或语法转换为对象属性,灵活性更大了 ...