Apache Tika 1.20釋出
Apache Tika™工具包可從超過一千種不同的檔案型別(如PPT,XLS和PDF)中檢測和提取元資料和文字。所有這些檔案型別都可以通過單一介面進行解析,使Tika對搜尋引擎索引,內容分析,翻譯等非常有用。
解析方法將文件解析並將相關元資料作為輸入,並將結果輸出為XHTML SAX事件和額外元資料。 parse context引數用於指定與任何單個文件無關的上下文資訊(如當前本地)。導致這種設計的主要標準是:
流式解析
介面應該既不需要客戶端應用程式也不需要解析器實現來將完整的文件內容儲存在記憶體中或假離線到磁碟。這樣即使在沒有過多資源需求的情況下也可以解析大型文件。
結構化內容
解析器實現應該能夠在提取的內容中包括結構資訊(標題,連結等)。例如,客戶端應用程式可以使用此資訊來更好地判斷已解析文件的不同部分的相關性。
輸入元資料
客戶端應用程式應該能夠包含檔名或宣告的內容型別等元資料以及要解析的文件。解析器實現可以使用此資訊來更好地指導解析過程。
匯出元資料
除了文件內容之外,解析器實現應該能夠返回文件元資料。許多文件格式包含元資料,例如可能對客戶端應用程式有用的作者姓名。
上下文敏感度
雖然Tika解析器的預設設定和行為應該適用於大多數用例,但仍然存在需要對解析過程進行更細粒度控制的情況。在不破壞抽象層的情況下,將這種特定於上下文的資訊注入解析過程應該很容易。
Apache Tika 1.20包含許多改進和錯誤修復
- 升級到POI 4.0.1(TIKA-2751)。
- 在PDFBox(TIKA-2779)中整合/引數化新的角度處理。
- 升級到PDFBox 2.0.13(TIKA-2788)。
- 防止和>元素中的內容寫入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)。