Apache Tika™工具包可從超過一千種不一樣的文件類型(如PPT,XLS和PDF)中檢測和提取元數據和文本。全部這些文件類型均可以經過單一界面進行解析,使Tika對搜索引擎索引,內容分析,翻譯等很是有用。html
![Apache Tika 1.20發佈Apache Tika 1.20發佈](http://static.javashuo.com/static/loading.gif)
解析方法將文檔解析並將相關元數據做爲輸入,並將結果輸出爲XHTML SAX事件和額外元數據。 parse context參數用於指定與任何單個文檔無關的上下文信息(如當前本地)。致使這種設計的主要標準是:java
流式解析linux
接口應該既不須要客戶端應用程序也不須要解析器實現來將完整的文檔內容保存在內存中或假脫機到磁盤。這樣即便在沒有過多資源需求的狀況下也能夠解析大型文檔。sql
結構化內容apache
解析器實現應該可以在提取的內容中包括結構信息(標題,連接等)。例如,客戶端應用程序可使用此信息來更好地判斷已解析文檔的不一樣部分的相關性。app
輸入元數據工具
客戶端應用程序應該可以包含文件名或聲明的內容類型等元數據以及要解析的文檔。解析器實現可使用此信息來更好地指導解析過程。搜索引擎
導出元數據spa
除了文檔內容以外,解析器實現應該可以返回文檔元數據。許多文檔格式包含元數據,例如可能對客戶端應用程序有用的做者姓名。翻譯
上下文敏感度
雖然Tika解析器的默認設置和行爲應該適用於大多數用例,但仍然存在須要對解析過程進行更細粒度控制的狀況。在不破壞抽象層的狀況下,將這種特定於上下文的信息注入解析過程應該很容易。
Apache Tika 1.20包含許多改進和錯誤修復
- 升級到POI 4.0.1(TIKA-2751)。
- 在PDFBox(TIKA-2779)中集成/參數化新的角度處理。
- 升級到PDFBox 2.0.13(TIKA-2788)。
- 防止<style/>和<script/>元素中的內容寫入ToTextContentHandler(TIKA-2550)。
- 在tika-server的-spawnChild模式下將子進程切換到父進程通訊到共享內存映射文件。
- 修復了在傳統模式(而不是-spawnChild)中運行時tika-server中的錯誤,致使它在達到OutOfMemoryError(TIKA-2776)後提交的文檔上返回503。
- 升級jaxb-runtime和javax.activation(TIKA-2778)。
- 批處理模式下的tika-app如今須要向父進程發出中斷或終止信號以中止父進程和子進程(TIKA-2780)。
- 批量升級依賴項(TIKA-2775)。
- 提升tika-eval(TIKA-2777)的語言效率。
- 將sqlite「提供」依賴項升級到3.25.2(TIKA-2773)。
- 刪除PPT幻燈片中的重複備註(TIKA-2735)
- 在tika-server的-spawnChild模式下生成子進程時,使用-javaHome或$ JAVA_HOME(若是存在)。
- 修復了Word Parser中超連接周圍樣式的關閉貢獻者:Ronan O'Sullivan(TIKA-2599)。
原文來自: https://www.linuxprobe.com/apache-tika-release.html