2012-02-07 2 views
0

nutchでは、Webページのコンテンツを取得して特別な方法で処理するプラグインを実装しています。私の主な問題は、私が処理することができるように平文にWebページを変換したいですnutchプラグインでtikaを使用

,,私はティカツールキットがとても

ことを行うことができますことを読んで、私はそれを書く、URLを解析するティカ使用し、このコードを見つけましたフィルタ法

public ParseResult filter(Content content, ParseResult parseResult, HTMLMetaTags metaTags, DocumentFragment doc) 
    { 
byte[] raw = content.getContent(); 
ContentHandler handler = new BodyContentHandler(); 
Metadata metadata = new Metadata(); 
Parser parser = new AutoDetectParser(); 
parser.parse(new ByteArrayInputStream(raw), handler, metadata, new ParseContext()); 
String plainText = handler.toString(); 
LOG.info("Mime: " + metadata.get(Metadata.CONTENT_TYPE)); 
LOG.info("content: " + handler.toString()); 

     } 

下metadata.get(Metadata.CONTENT_TYPE)の結果は、text/htmlの

ですがhandler.toString()が空であります!

更新: はまた、私はパーサ方法

LOG.info ("Status : "+ new ParseStatus().toString()); 

後にこのラインを使用しようと、私はこの結果を得る: ステータス:バージョン1.1以来(0,0)

答えて

1

notparsed Nutchのが含まれてTika pluginNUTCH-766も参照)が必要です。より包括的な文書があるかどうかはわかりません。詳細については、Nutch usersメーリングリストにお尋ねしたいかもしれません(またはSOの誰かが記入することができます)。

+0

ありがとう、私はメーリングリストの質問をしましたが、誰も私に答えませんでした。役立つリソースやスナップショットがありますか? –

0

Jukka Zittingが言ったように、Tikaは既にナッチで活用されています。貼り付けたコードには、Nutch固有のデータ構造にmetadataParseStatusを設定した場所はありません。だからそれに応じてParseStatusが表示されません。

関連する問題