M2项目测试
更为详细的测试报告,我们会在后续整理出来。
在M1的基础上,我们新增加了两个个数据表来存放问答对以及标签信息的表:C705question表 与 tag表
第二次迭代中,我们积极地同第三组沟通,了解到他们需要实现的核心功能需要我们为他们提供一个新的数据库,这个数据库存放了问答网站的地址以及问题的相关信息。因此我们筛选了六个常用的问答网站(百度知道,搜搜问问,德问,stackoverflow,cnblog,),向第一组提出了尽量爬取这六个网站的需求,我们在这一阶段要做的就是将网站中的有效信息提取出来存入数据库提供给下一组使用。
具体的实现是:
我们分别查看了这六个网站的网页结构,用多个例子确定了每个网站的网页结构,我们发现,我们需要提取的标签、摘要等信息,都固定地存放在html的某个标签中,因此,我们用正则表达式去匹配了这样的标签,将信息提取出来。需要特别指出的是对于特殊情况的处理:比如近期的问题通常会显示“三小时前提出”这样的信息,这和我们需要提取的标准格式的时间不符合,考虑到问题的时间是对准确度要求不那么高的数据,我们粗略地按当前的系统时间存入数据库。
如下图所示,我们把每个网站分解成以下几个部分:
问题的网址、问题的标题、问题的内容、提出问题的时间、答案的数量、问题的id、标签的id。当一个网站处理完后,我们将这一组信息插入到数据库。另外,基于第三组的要求,为了避免对汉字的重复存储,我们新建了一张tagId和tag内容的一对一的表,当我们读到一个tag的时候,就在这张表里面找它的id,找到的话就用这个id,没有找到就新建一个id再用。
C705question表:保存了问答对信息
title:问题的标题
abstract:问题的内容
link:问题的网址
created:提出问题的时间
answer:回答数量
qid:问题的编号
tid:与之对应的标签编号
tag表:包含标签编号与相应的标签名字(该数据结构满足UI组的要求)
测试环境:
数据库服务器配置(本机测试) |
||||
机器名(IP) |
CPU |
内存 |
软件环境(操作系统、应用软件) |
|
219.224.191.25 |
2.40GHz |
8.00GB |
Windows server 2008 R2 Standard |
|
应用服务器配置(本机测试) |
||||
机器名(IP) |
CPU |
内存 |
软件环境(操作系统、应用软件) |
|
219.224.191.25 |
2.40GHz |
8.00GB |
Windows server 2008 R2 Standard |
|
其他说明 |
无 |
|||