关于使用crawler4j库的Java web crwaler中的模式匹配的一些信息



我想用Java实现一个非常简单的网络爬虫,我找到了这个库:crawler4j:http://code.google.com/p/crawler4j/

我需要一个能做以下事情的爬虫:

从URL(由我指定)开始,识别当前页面中是否有特定单词,如自己的姓名或公司名称(该单词也由我指定

如果找到这个单词,则必须将当前页面的URL保存在数据库中。

因此,没有语义分析,只有句法分析(爬网程序必须尝试将网页内容与我指定的一些令牌相匹配)

我想知道这个令牌研究(查找当前页面中是否包含单词)是由crawler4j的抽象类WebCrawler实现的功能,还是我必须自己实现

正如user1887511所指出的,实现起来非常简单。改编自此处。

  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()):
            }
  }

您必须自己实现它,代码中的一个起点是visit()子类/方法,当访问页面时会调用它。。。并解析给你,然后你可以对页面文本做任何你想做的事情。。。例如使用正则表达式模式。

相关内容

  • 没有找到相关文章

最新更新