contentpredicate.java

来自「java写的crawler」· Java 代码 · 共 71 行

JAVA
71
字号
/* * WebSphinx web-crawling toolkit * * Copyright (c) 1998-2002 Carnegie Mellon University.  All rights * reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright *    notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright *    notice, this list of conditions and the following disclaimer in *    the documentation and/or other materials provided with the *    distribution. * * THIS SOFTWARE IS PROVIDED BY CARNEGIE MELLON UNIVERSITY ``AS IS'' AND * ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL CARNEGIE MELLON UNIVERSITY * NOR ITS EMPLOYEES BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * */package websphinx.workbench;import websphinx.*;public class ContentPredicate implements LinkPredicate, PagePredicate {    Pattern pattern;    boolean overHTML;        public ContentPredicate (Pattern pattern, boolean overHTML) {        this.pattern = pattern;        this.overHTML = overHTML;    }    public boolean equals (Object object) {        if (! (object instanceof ContentPredicate))            return false;        ContentPredicate p = (ContentPredicate)object;        return p.pattern.equals (pattern)            && p.overHTML == overHTML;    }        public Pattern getPattern () {        return pattern;    }    public boolean getOverHTML () {        return overHTML;    }    public void connected (Crawler crawler) {}    public void disconnected (Crawler crawler) {}        public boolean shouldVisit (Link link) {        return overHTML ? pattern.found (link) : pattern.found (link.toText());    }    public boolean shouldActOn (Page page) {        return overHTML ? pattern.found (page) : pattern.found (page.toText());    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?