我想使用Java实现一个非常简单的Web搜寻器,并且找到了以下库:crawler4j:http://code.google.com/p/crawler4j/
我需要执行以下操作的搜寻器:
从URL(由我指定)开始,并识别当前页面中是否有特定的单词,例如自己的名字或公司名称(此单词也由我指定)
如果找到该单词,则必须将当前页面URL保存在数据库中。
因此,没有语义分析,只有语法分析(搜寻器必须尝试将网页内容与我指定的某些令牌相匹配)
我会知道此令牌研究(查找当前页面中是否包含单词)是由crawler4j的抽象类WebCrawler
实现的功能,还是我必须自己实现
最佳答案
正如user1887511所指出的那样,实现起来非常简单。改编自here。
static String wordToFind = "...";
public void visit(Page page) {
if (page.getParseData() instanceof HtmlParseData) {
HtmlParseData htmlParseData = (HtmlParseData) page.getParseData();
String text = htmlParseData.getText();
if(text.indexOf(wordToFind)!=-1)
saveToDB(page.getWebURL().getURL()):
}
}