天天看點

跟益達學Solr5之使用Tika從PDF中提取資料導入索引

    開始此篇之前,我假定你已經學會了如何在tomcat下部署solr5啦。即啟動tomcat後你能看到solr5的web ui界面。ok,下面直接進入正題。

         首先你需要在你的core根目錄下建立一個lib目錄來存放依賴的jar包,當然你也可以直接到依賴的jar包扔到tomcat webapps目錄下部署的solr程式的web-inf\lib目錄下即如圖:

跟益達學Solr5之使用Tika從PDF中提取資料導入索引

這裡我采用了另外一種方式,把依賴的jar包放目前core的lib目錄下,這樣做的好處是每個core依賴的jar包都存放在各自core的子目錄下分類存放,更友善管理,全部扔tomcat下雜亂無章不好管理。如圖建立lib目錄:

跟益達學Solr5之使用Tika從PDF中提取資料導入索引

 然後往lib目錄copy一些 dih依賴的jar包,如圖:

跟益達學Solr5之使用Tika從PDF中提取資料導入索引

 截圖的那些jar包在solr5的解壓包裡都能找到,如果你實在找不到再來問我。然後solrconfig.xml配置檔案裡我們需要配置外部jar包的加載路徑,如圖配置:

跟益達學Solr5之使用Tika從PDF中提取資料導入索引

 dir參數裡的./即表示目前core根目錄,regex表示一個正規表達式,目的就是為了批量指定j加載哪些jar包.然後配置我們的dataimport處理器并指定data-config.xml配置檔案的加載路徑,如圖:

跟益達學Solr5之使用Tika從PDF中提取資料導入索引

 然後編寫配置我們的data-config.xml,如圖:

跟益達學Solr5之使用Tika從PDF中提取資料導入索引

url="c:/docs/solr-word.pdf"即表示對c:\docs目錄下的solr-word.pdf檔案進行文本提取并建立索引,format表示把提取到的文本當作什麼類型的資料,預設支援text(純文字),xml,json,html等格式,不配置format預設值就是text.

    然後我們需要在schema.xml檔案裡定義我們的域,如圖:

跟益達學Solr5之使用Tika從PDF中提取資料導入索引

 細心的你,肯定發現了我配置了ik分詞器,ik分詞器配置如圖:

跟益達學Solr5之使用Tika從PDF中提取資料導入索引

 剛才我已經在core根目錄的lib下複制了ik分詞器jar包,我們還需要在core\conf目錄下複制一份ikanalyzer.cfg.xml配置檔案,如果你有自定義ik擴充字典,那麼你還需要把擴充字典檔案的加載路徑配置在ikanalyzer.cfg.xml檔案裡,如圖:

跟益達學Solr5之使用Tika從PDF中提取資料導入索引

 然後我們需要在c:/docs目錄下放一個pdf檔案進行測試,solr-word.pdf這個測試pdf檔案在solr5的解壓目錄下可以找到,如圖:

跟益達學Solr5之使用Tika從PDF中提取資料導入索引
跟益達學Solr5之使用Tika從PDF中提取資料導入索引

 到此,準備工作就完成了,重新開機你的tomcat,通路你的solr web ui進行測試,如圖:

跟益達學Solr5之使用Tika從PDF中提取資料導入索引

 如果你執行後看到如圖效果,就表明pdf導入solr成功了,為了驗證pdf成功導入solr了,你可以切換到query菜單進行查詢驗證,如圖:

跟益達學Solr5之使用Tika從PDF中提取資料導入索引

    ok,關于如果導入pdf到solr5就介紹到這兒了。相關配置檔案我待會兒會在底下的附件裡打包上傳一份供你們參考,但希望你們還是要自己動手操作下,不要僅僅是直接解壓複制我提供的示例,隻有于遇到問題并不斷自虐的過程中你才能學到經驗。(注意:由于jar包體積太大,iteye無法上傳,是以lib目錄下的jar我沒法上傳,是以如果你找不到jar包,請聯系我)

      間隔很久沒寫了,讓大家等久了,不好意思哈,寫部落格不易,大家且看且珍惜,也希望大家多多提意見,時間匆忙,難免會有所纰漏。

      如果你還有什麼問題請加我Q-q:7-3-6-0-3-1-3-0-5,

或者加裙

跟益達學Solr5之使用Tika從PDF中提取資料導入索引

一起交流學習!

轉載:http://iamyida.iteye.com/blog/2214600