2010-10-25 31 views
0

您可以使用ExtractingRequestHandler和Tika與 壓縮文件格式(zip,tar,gz等)中的任何一種來提取索引內容嗎?使用Solr CELL的ExtractingRequestHandler從包格式索引/提取文件

我使用curl發送solr archived.tar文件。 curl「 http://localhost:8983/solr/update/extract?literal.id=doc1&fmap.content=body_texts&commit=true」 -H'Content-type:application/octet-stream'--data-binary 「@/home/archived.tar」 我查詢文檔時得到的結果是文件名裏面 存檔被索引爲「body_texts」,但這些文件的內容爲 未提取或包含。這不是我預期的行爲。 Ref: http://www.lucidimagination.com/Community/Hear-from-the-Experts/Articles/Content-Extraction-Tika#article.tika.example。 當我使用相同的curl 命令發送檔案內的實際文檔中的一個時,提取的內容將存儲在「body_texts」字段中。 Am 我錯過了壓縮文件的一個步驟?

我添加了所有提取的依賴關係,通過墊在 http://outoftime.lighthouseapp.com/projects/20339/tickets/98-solr-cell和 我能夠從微軟的Word,PDF,HTML文檔提取成功的數據顯示。

我正在使用以下庫版本。 Solr 1.40,Solr Cell 1.4.1,Tika Core 0.4

鑑於所有我已閱讀過的Tika版本應該支持從壓縮文件中的所有文件中提取 數據。任何幫助或建議 將不勝感激。

回答

1

簡短的回答:Solr Cell 1.4.1和Tika Core 0.6。

漫長的回答:經過很多令人頭疼的事情之後,我才得以做到這一點。我會直接爲使用solr的人以及使用solr與Ruby庫太陽黑子(這是我的問題)的人解答。

這是我做的:我用這個https://github.com/tomasc/sunspot_cell插件來擴展太陽黑子並給它附加功能。 (忽略這一步,如果你不使用紅寶石/太陽黑子)

v1.4.1適用於單個文件,但不適用於壓縮文件,所以我不得不探索一下。我從http://lucene.apache.org/solr/下載了v1.4.1代碼庫,並抓住dist/apache-solr-cell-1.4.1.jar,然後我必須從1.5分支http://svn.apache.org/viewvc/lucene/solr/branches/branch-1.5-dev/contrib/extraction/lib/下拉Tika庫。

您可以單獨下載每個,或者你可以用svn通過

svn co http://svn.apache.org/repos/asf/lucene/solr/branches/branch-1.5-dev 

簽出分支或者只是簽出庫文件夾:

svn co http://svn.apache.org/repos/asf/lucene/solr/branches/branch-1.5-dev/contrib/extraction/lib/ 
相關問題