2011-04-08 7 views
1

큰 웹 사이트를 nutch로 크롤링 한 다음 solr을 사용하여 인덱싱하고 결과를 꽤 잘 보여줍니다. 그러나 쿼리 결과를 색인하고 망칠 수있는 여러 메뉴 구조가 사이트 전체에 있습니다.solr을 사용하여 HTML 인덱싱

각 메뉴는 DIV에 명확하게 정의되어 있으므로 <div id="RHBOX"> ... </div> or <div id="calendar"> ...</div> 등 여러 가지가 있습니다.

언젠가이 DIVS의 내용을 삭제해야합니다.

나는 solr에 의한 색인 작성 중에 올바른 위치를 추측하지만 어떻게 작동하지 않을지 추측하고 있습니다.

패턴은 (<div id="calendar">).*?(<\/div>)과 비슷하지만 <tokenizer class="solr.PatternTokenizerFactory" pattern="(<div id="calendar">).*?(<\/div>)" />에서 작동하도록 할 수 없으며 schema.xml에 어디에 넣을 지 잘 모릅니다.

schema.xml에 패턴을 넣을 때 구문 분석을 수행하지 않습니다. 편집이

답변

-1

당신이 SOLR 내에서 사용 가능한 HTML 다른 HTML의 tokenizers 살펴 보았다 스틱 있도록

나는이 줄을 추가하고?

http://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters#solr.HTMLStripWhitespaceTokenizerFactory

그들은이 문제를 해결하는 데 도움이됩니다. HTML 태그 자체를 색인화해서는 안됩니다. 그러나 특정 태그를 고유하게 식별해야하는 경우 개별 필드를 만들어 해당 필드에 특수 태그의 내용을 저장해야합니다.

+0

어쨌든 질문에 대답하지 않습니다. – Henry

+0

@Henry - 질문을 진술 해주세요. 당신이 요구하는 것을 정확하게 말하기는 어렵습니다. 그리고 당신은 더 명확한 대답을 얻을 것입니다. – jro

+0

나는 그가 HTML 소스 코드의 색인 방법을 알고 싶어한다고 생각한다. 나는 또한 그 대답에 흥미가있을 것이다. – nottinhill

관련 문제