`
lovecontry
  • 浏览: 1039594 次
文章分类
社区版块
存档分类
最新评论

著名java开源搜索引擎bddbot的简单使用——测试报告

 
阅读更多

一、 编译

1. 安装JDKjava开发工具包),这步环境变量设置比较麻烦(例如我用的是jdk6.0_13),在系统属性->高级->环境变量中,设置如下三个变量(如果没有的话,则新建一个该名称的变量)

1) JAVA_HOME,添加值:D:/Program Files/Java/jdk1.6.0_13;//如果只有一个变量值,不需要加“;”号。

2) ClassPath,添加值:.;%JAVA_HOME%/lib/tools.jar;

3) Path,添加值:%JAVA_HOME%/bin;

2. 将文档bddbot.zip解压到bddbot目录下(以bddhot为根目录,如放在E盘下,则为E:/bddbot),bddbot目录下有bddsearchdb两个子目录。

3. 修改bdd/search/EnginePrefs.javaString email_address = "Felomeng@live.cn"; // 改成自己的电邮

4. 打开开始->运行->输入cmd->回车,在命令行中,先转到目录bddhot下,再执行命令javac bdd/search/EnginePrefs.java(其余的所有类文件也都已经编译,如果没有编译的话到相应文件夹下执行命令javac *.java即可)

5. searchdb文件夹下两文件rules.txturls.txt的用法,顾名思义:
rules是对urls的约束条件,有两种用法:includeexclude,如include http://grs.pku.edu.cn/zs/,就是下载http://grs.pku.edu.cn/zs/开头的所有网页。urls是初始爬取的页面地址列表,每行一个地址,系统在这个地方不完善,对.html.htm结尾的网页(即使用全名的网页)效果较好。#表示注释,即没有作用。

二、 爬取

1. 配置rules.txt值为include http://grs.pku.edu.cn/zs/

2. 配置urls值为http://grs.pku.edu.cn/zs/zs_news.html

3. 命令行中执行java bdd.search.Monitor(注意,命令行当前目录应为bddbot)打开图形界面

1 主界面

其中

1) Queries栏目是检索所用关键字的记录;Current Url是当前正在处理的网页;

2) Total Bytes表示已经下载的内容的流量;

3) Processed是已经处理过的网页地址列表;

4) Errors是出错的网页地址列表,在命令窗体中有详细的错误记录。

4. 点击start crawler,该按钮变成不可用状态,开始爬取。爬取完成后,该按钮恢复到可用状态。

2 正在爬取

3 爬取完成

其中Queries里面记录的是汉字内容,显示成了乱码,对汉语支持不完善。命令窗体的错误记录为:

java.net.MalformedURLException: unknown protocol: javascript

at java.net.URL.<init>(URL.java:574)

at java.net.URL.<init>(URL.java:464)

at bdd.search.spider.HTMLLinkExtractor.analyzeAnchor(HTMLLinkExtractor.j

ava:76)

at bdd.search.spider.HTMLLinkExtractor.analyze(HTMLLinkExtractor.java:63

)

at bdd.search.spider.HTMLLinkExtractor.<init>(HTMLLinkExtractor.java:43)

at bdd.search.spider.URLStatus.getLinkExtractor(URLStatus.java:152)

at bdd.search.spider.Indexer.run(Indexer.java:93)

5. 本次下载后主索引文件(在E:/bddbot/searchdb/main.db)大小为1.34M,用时共约20分钟。

三、 搜索测试

1. 检索:
<form action="
http://222.29.124.166:8001/query" method=GET>
<input type="text" name="words" value="" size=45>
<input type="submit" value="Search">
</form>
把上面见容另存为html文档,其中222.29.124.166改成本机地址即可使用,一般windows下测试可以直接使用localhost(当然,可以在此基础上在界面上面多添加一些元素),如图:

4 搜索界面

2. 然后用浏览器打开它,在开启Monitor的情况下(注意,要求已经成功爬取完成一部分语料),输入关键字进行搜索。

5 一个搜索结果

附:bddbot源码及其文档bddbot测试报告(使用方法) Word版。

分享到:
评论

相关推荐

    bddbot测试报告(使用方法)

    著名开源搜索引擎bddbot的使用方法。

    bddbot 搜索引擎

    这是一个和方便和简易的搜索引擎,希望帮到大家,运行monitor类就可以打开窗体,再通过使用浏览器就可以输入要搜索的关键字

    bddbot及其文档

    著名开源搜索引擎,编写语言Java,源代码和相关文档。

    python-selenium-bdd:基于Python的测试框架,包括BDD,Selenium Webdriver和Page对象模型

    python-selenium-bdd 一个基于Python的测试框架,包括BDD,Selenium Webdriver和Page Object Model。 在文章中了解有关如何使用此存储库的更多信息:

    android手机应用源码Imsdroid语音视频通话源码.rar

    android手机应用源码Imsdroid语音视频通话源码.rar

    营销计划汇报PPT,市场品牌 推广渠道 产品 营销策略tbb.pptx

    营销计划汇报PPT,市场品牌 推广渠道 产品 营销策略tbb.pptx

    JavaScript_超过100种语言的纯Javascript OCR.zip

    JavaScript

    JavaScript_跨平台React UI包.zip

    JavaScript

    node-v16.17.0-headers.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    520表白代码.rar

    520表白html5爱心代码

    一个简单的HTML5和CSS代码示例,用于创建一个动态的爱心形状,并在网页上展示一个类似520表白的消息 这个示例使用了CSS的

    520表白html5爱心代码 一个简单的HTML5和CSS代码示例,用于创建一个动态的爱心形状,并在网页上展示一个类似520表白的消息。这个示例使用了CSS的动画效果和HTML的结构。

    智慧养老社区方案.pdf

    智慧养老社区方案.pdf

    node-v14.11.0-headers.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    JavaScript_美观和可访问的拖放列表与React.zip

    JavaScript

    codeviz 1.0.12

    codeviz 1.0.12

    JavaScript_高级用户LLM前端.zip

    JavaScript

    javascript koans是一个交互式学习环境,它使用失败测试按逻辑顺序向学生介绍javascript的各个方面.zip

    JavaScript

    JavaScript_巴勒斯坦和巴以冲突资源的策划列表.zip

    JavaScript

    JavaScript_手工制作的弗里达例子.zip

    JavaScript

    node-v17.4.0-headers.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

Global site tag (gtag.js) - Google Analytics