发布地址

https://github.com/LongWerLingShi/DataObtainingAndHandling/tree/beta

版本开发背景

  首先,应软件工程课程要求,我们小组针对学霸网站进行了后台数据处理与获取模块的开发。在最初的两周里面,基于前届学长们的作品,我们开发出了alpha版本。但是受限于老旧的代码架构,很多的问题都无法得到有效的解决。于是在接下来的一个月里面,我们又开发出了beta版本,彻底抛弃了之前爬虫程序以及数据处理程序的全部框架,重新构建了完整的程序。在性能获得质的飞跃的同时,我们还新增了管理网页用于查看当前的处理进度以及控制程序

新增功能

  1. 爬虫权限控制(robot.txt协议)
  2. 新增新增基于之前爬取进度继续爬取的功能
  3. 新增多线程爬虫
  4. 新增动态控制爬虫开关以及数量的功能
  5. 新增动态增加删除seed的功能
  6. 新增网页图形化显示界面
  7. 新增对于问答对的处理
  8. 新增爬取图片的功能
  9. 新增对于中文的支持
  10. 新增基于TD-IDF算法的关键词提取模块

修复缺陷

  1. 修复了编码格式不一致导致的乱码问题
  2. 修复了爬虫相关的所有bug(因为重构)
  3. 修复了中英翻译的bug

对于于运行环境的要求

  1. window系统
  2. 可以正常访问ipv6网站

安装使用

  1. 整个系统分为爬虫以及数据处理两个部分
  2. 爬虫作为爬取数据源,需要作为java后台程序一直运行并且可以通过网页来控制
  3. 网页需要安装配置好apache、php相关环境
  4. 具体操作安装方法见文档:学霸数据处理项目之数据处理框架开发者手册(http://www.cnblogs.com/nrm1/p/6215275.html)

系统已知的问题以及限制

  1. 由于服务器网络环境的限制,所以当前只能在个人pc上运行,在服务器上无法正常访问部分网站
  2. 出于对爬虫准确性的控制,增加了对于域名访问的限制,可能会影响一些爬虫对于单个网站爬取的效率

功能对照表

测试功能 测试项 效果描述 完成情况
管理页面 处理程序启动 点击“开始”按钮可以让处理程序开始处理  T
打开爬虫管理页面 点击“来源配置”弹出爬虫管理页面  T
打开输出目标配置页面 点击“输出配置”弹出输出配置页面  T
爬虫功能 爬虫爬取信息seed增加 可以在爬虫管理页面手动增加爬取信息来源网站  T
爬虫关键词筛选 可以增加关键字在爬取信息的时候筛选内容  T
爬虫多线程启动 可以自定义启动几个爬取线程,并且可以看到各个线程的运行情况  部分
爬虫信息展示 可以看到此处运行爬虫的信息,运行时间、爬取到的文件数  T
爬虫爬取网站数量限制 可以自定义爬虫爬取网站数,如果缺省则一致爬下去  F
爬虫文件信息保存 从网上爬下的信息可以按照格式保存在数据库里面,可以从数据库看到数据更新  T
数据处理功能 数据处理启动控制 可以在网站上管理当前数据处理线程的启动与暂停  T
doc数据文本信息获取 从doc文件中提取文本信息出来  T
doc关键信息提取 从doc文件中提取关键信息并且保存  T
html数据文本获取 从html提取去噪后的文本  T
html关键信息提取 从html文件提取关键信息  T
pdf数据文本获取 从pdf文件提取文本信息  T
pdf关键信息提取 从pdf文件中提取关键词  T
问答对网站信息提取 从问答网站提取问题以及优质答案  T
拓展功能 配置链接的solr账户 可以手动配置需要链接的solr数据库  F
自定义上传 允许用户进行solr索引删除以及重建选项  F
提供修改关键词接口 提供修改关键词接口以及访问方法  T
登陆账户 提供登陆界面,使用固定账号才可以登陆到管理界面里面  T

Beta版本发布说明的更多相关文章

  1. Beta版本测试报告以及Beta版本发布说明

    Beta版本测试报告 请根据团队项目中软件的需求文档.功能说明.系统设计和Beta阶段的计划安排,写出软件的测试过程和测试结果,并回答下述问题. 在测试过程中总共发现了多少bug?每个类别的bug分别 ...

  2. 团队作业-Beta版本发布

    这个作业属于哪个课程  <课程的链接>            这个作业要求在哪里 <作业要求的链接> 团队名称 Three cobblers 这个作业的目标 Beta版本发布报 ...

  3. 易货Beta版本发布说明

    说明 由于前几天确实比较忙,所以没来得及写发布说明. 功能 我们在beta版本主要加入了以下几个功能: 一:增加了用户的发布界面 二:增加了用户的购买界面 三:使用下拉刷新取代了之前的handler后 ...

  4. 学霸网站-Beta版本发布说明

    项目名称 学霸网站 项目版本 Beta 项目团队 ourteam 发布日期 2015-1-5 一.Alpha版本实现功能简介: 1.匿名提问 2.匿名回答 3.采纳功能 4.登录.注册失败后,用户名等 ...

  5. Beta版本发布报告

    项目名称 学霸系统写手机客户端 项目版本 Beta版本 负责人 北京航空航天大学计算机学院 hots团队 联系方式 http://www.cnblogs.com/hotsbuaa/ 要求发布日期 20 ...

  6. 各组Beta版本发布点评

    1.  新蜂:俄罗斯方块 俄罗斯方块已经基本完成了所有功能,运行流畅,也加入了之前用户期待的即将降落的方块和游戏积分的功能,用户还能随时暂停和继续游戏. 2. 天天向上: 连连看游戏 连连看游戏在核心 ...

  7. [转帖] 红帽8.0 beta版本发布 内核新版本 4.18

    Red Hat Enterprise Linux 8 Beta 现已发布! https://www.oschina.net/news/101870/red-hat-enterprise-linux-8 ...

  8. Pipeline组Beta版本发布说明

    项目名称 Pipeline 项目版本 Beta版本 负责人 北京航空航天大学计算机学院 IloveSE 小组 联系方式 http://www.cnblogs.com/IloveSE 要求发布日期 20 ...

  9. Beta版本发布

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass1/?page=2 这个作业要求在哪里 <作业要求的 ...

随机推荐

  1. M1/M2个人总结

    软件工程整个学期结束了,很开心学了这门课,在学到知识的同时也提高了自己的动手实践的能力,感觉自己在整个软件工程的各个环节中都能有所把握,可以将学到的知识运用到设计.实践更多的项目中去. M1阶段个人总 ...

  2. 一个自定义控件的Demo

    里面包括Button.Checkbock.listview.popupwindow的自定义 import android.app.Activity; import android.content.In ...

  3. 怎么利用javascript删除字符串中的最后一个字符呢?

    程序员就是每天在各种代码下不停的调试,世界买家网最近遇到了烦心事,是什么事情呢? 需求是一个字符串,想删除这个字符串最后一个字符,比如“1,2,3,4,5,”,删除最后一个“,”用javascript ...

  4. 第一章 JavaScript简史

    JavaScript:  一种使网页具有交互能力的程序设计语言. BOM: 浏览器对象模型,指通过JS用来调整Web浏览器的高度.宽度和位置属性的办法. DHTML: 1.利用HTML标记各种元素   ...

  5. 一些初级Java错误,不定期增加

    1. Error: Dangling meta character '*' near index 0 对字符串使用split()方法截取 * ? + / | 等字符的时候会报以下异常 Dangling ...

  6. $("").click与onclick的区别

    onclick是绑定事件,click本身是方法作用是触发onclick事件,只要执行了元素的click()方法,下面示例 Html代码 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 ...

  7. 一个Java线程小例子(仿火车票售卖)

    public class MyThread extends Thread{ private static int ticket=100; public void run(){ for(int i=0; ...

  8. aspx前台调用cs后台方法

    随着对于mvc的习惯使用,aspx页面渐渐用的不怎么用了,主要是生命周期感觉上比较慢,要么就用html+handler一般处理程序来装下逼.虽然不用,但还是要给刚工作的人讲下,相信不少人都想过:既然前 ...

  9. Java(三)

    任意整数求和: (1) import java.util.Scanner; public class sum { @SuppressWarnings("resource") pub ...

  10. css基本设置

    css引入方式: 头部引入:在HTML页面头部编写程序(一般用在访问量大的网页上) 标签内引入:在标签内直接写样式(优先级最高,但难于维护,会沉积大量代码) 外部引入:用link标签引入(常用 ,维护 ...