2011-10-28 11 views
2

こんにちは私はUbuntuにsolrとnutchをインストールしました。私は機会にクロールしてインデックスを作成できますが、常にそうではありません。私はこのパスエラーが繰り返し発生しており、解決策をオンラインで見つけることができませんでした。通常は、エラーのあるディレクトリを削除して再実行しますが、正常に動作します。しかし、私はもうこれをやりたくはありません。エラーの原因は何ですか?ありがとう。クロールフォルダのNutchパスエラー

LinkDb: adding segment: file:/home/nutch/nutch/runtime/local/crawl/segments/20111027231916 
LinkDb: adding segment: file:/home/nutch/nutch/runtime/local/crawl/segments/20111027232907 
LinkDb: adding segment: file:/home/nutch/nutch/runtime/local/crawl/segments/20111027233840 
LinkDb: adding segment: file:/home/nutch/nutch/runtime/local/crawl/segments/20111027224701 
LinkDb: org.apache.hadoop.mapred.InvalidInputException: Input path does not exist: file:/home/nutch/nutch/runtime/local/crawl/segments/20111027231916/parse_data 
Input path does not exist: file:/home/nutch/nutch/runtime/local/crawl/segments/20111027232907/parse_data 
Input path does not exist: file:/home/nutch/nutch/runtime/local/crawl/segments/20111027233840/parse_data 
    at org.apache.hadoop.mapred.FileInputFormat.listStatus(FileInputFormat.java:190) 
    at org.apache.hadoop.mapred.SequenceFileInputFormat.listStatus(SequenceFileInputFormat.java:44) 
    at org.apache.hadoop.mapred.FileInputFormat.getSplits(FileInputFormat.java:201) 
    at org.apache.hadoop.mapred.JobClient.writeOldSplits(JobClient.java:810) 
    at org.apache.hadoop.mapred.JobClient.submitJobInternal(JobClient.java:781) 
    at org.apache.hadoop.mapred.JobClient.submitJob(JobClient.java:730) 
    at org.apache.hadoop.mapred.JobClient.runJob(JobClient.java:1249) 
    at org.apache.nutch.crawl.LinkDb.invert(LinkDb.java:175) 
    at org.apache.nutch.crawl.LinkDb.run(LinkDb.java:290) 
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65) 
    at org.apache.nutch.crawl.LinkDb.main(LinkDb.java:255) 

答えて

0
bin/nutch solrindex http://127.0.0.1:8983/solr/ crawl/crawldb -linkdb crawl/linkdb crawl/segments/* 

チェックが存在し、適切な権限を持っている、あなたはそのオプションの新しいバージョンでは、上記のように-linkdb使用する必要があります。ほとんどの場合、このエラーは、crawldb linkdbとセグメントパスが正しく指定されていないために指定するパスが原因です。

私は上記の構文を使用して同じ問題を抱えていました。指定したフォルダが正しいことを確認してください。

http://thetechietutorials.blogspot.com/2011/06/solr-and-nutch-integration.html

、これを使用するには、私のために働きました。

1

Nutchプロセスを強制終了したに違いありません。ディレクトリcrawldbなどをクリアするだけでよいです。

Nutchは、まずクロールパス内の準備リンクデータベース(linkdb)を探します(見つからない場合は、シードファイルから新しいリンクデータベースを作成します)。クロールプロセスを終了すると、リンクデータベースからの読み取りに失敗します。