2013-05-07 2 views
2

bin/nutch solrindex 명령을 실행할 때 색인 생성에서 가져온 일부 페이지를 어떻게 방지합니까? 나는 fetch 할 때처럼 regex-urlfilter.txt를 정의하고 사용하고 싶다.Nutch 2.1 solrindex 명령의 URL을 필터링하는 방법

나는 Nutch 2.1을 사용 중이며 http://wiki.apache.org/nutch/bin/nutch%20solrindex에 따르면 옵션이 사라졌습니다. 소스 코드를 확인했는데 문제에 대한 단서를 찾을 수 없습니다.

해결 방법이 있습니까?

답변

2

인덱스 필터 플러그인을 사용해야하는 것 같습니다.

나는 Hartl's tutorial을 따라 소스 코드를 구성하고 링크했습니다. "기록 목록"(링크) 및 "기록"I 페이지의 두 가지 유형을 가진 웹 사이트를 크롤링하고있어

public NutchDocument filter(NutchDocument doc, String url, WebPage page) 
    throws IndexingException { 
    String input_url = url; 
    try { 
     url = urlNormalizers.normalize(url, URLNormalizers.SCOPE_DEFAULT); 
     url = urlFilters.filter(url); // filter the url 
    } catch (Exception e) { 
     LOG.warn("Skipping " + input_url + ":" + e); 
     return null; 
    } 
    if (url == null) { 
     LOG.info("Skipping (filter): " + input_url); 
     return null; 
    } 
    return doc; 
} 

public void setConf(Configuration conf) { 
    this.conf = conf; 
    this.urlFilters = new URLFilters(conf); 
    urlNormalizers = new URLNormalizers(conf, URLNormalizers.SCOPE_INJECT); 
} 
0

제외 기준은 무엇입니까?

가져 오기/구문 분석 단계에서 제외 할 수 있습니까?

+0

:

여기에 코드의 흥미로운 부분이다. 먼저 레코드로 연결되는 링크를 검색하기 위해 첫 번째 레코드를 가져와야합니다. 그러나 "레코드"페이지의 색인 생성에만 관심이 있습니다. – Thomas

+0

페이지에 대한 액세스 권한이 있습니까? 그렇다면 메타 태그 content = "noindex, follow"를 추가 할 수 있으며 Nutch는이를 고려하여 아웃 링크를 추출하지만 콘텐츠를 크롤링하지는 않습니다. – nimeshjm

+0

그렇다면 SOLR의 쿼리 단계에서 결과를 필터링 할 수 있습니다. – nimeshjm

관련 문제