Tika 1.16架构及核心模块
一、什么是Tika?
-
Apache Tika用于文件類型檢測和從各種格式的文件內(nèi)容提取的庫。
-
在內(nèi)部,Tika使用現(xiàn)有的各種文件解析器和文檔類型的檢測技術(shù)來檢測和提取數(shù)據(jù)。
-
使用Tika,人們可以開發(fā)出通用型檢測器和內(nèi)容提取到的不同類型的文件,如電子表格,文本文件,圖像,PDF文件甚至多媒體輸入格式,在一定程度上提取結(jié)構(gòu)化文本以及元數(shù)據(jù)。
-
Tika提供用于解析不同文件格式的一個(gè)通用API。它采用83個(gè)現(xiàn)有的專業(yè)解析器庫,為每個(gè)文檔類型。
-
所有這些解析器庫是根據(jù)一個(gè)叫做Parser接口單一接口封裝。
二、架構(gòu)
三、核心模塊
每當(dāng)一個(gè)文本文件被傳遞到Tika,它將檢測在其中的語言。它接受沒有語言的注釋文件和通過檢測該語言添加在該文件的元數(shù)據(jù)信息。支持語言識別,Tika 有一類叫做語言標(biāo)識符在包org.apache.tika.language及語言識別資料庫里面包含了語言檢測從給定文本的算法。Tika 內(nèi)部使用N-gram算法語言檢測。
Tika可以根據(jù)MIME標(biāo)準(zhǔn)檢測文檔類型。Tika默認(rèn)MIME類型檢測是使用org.apache.tika.mime.mimeTypes。它使用org.apache.tika.detect.Detector 接口大部分內(nèi)容類型檢測。內(nèi)部Tika使用多種技術(shù),如文件匹配替換,內(nèi)容類型提示,魔術(shù)字節(jié),字符編碼,以及其他一些技術(shù)。
org.apache.tika.parser 解析器接口是Tika解析文檔的主要接口。該接口從提取文檔中的文本和元數(shù)據(jù),并總結(jié)了其對外部用戶愿意寫解析器插件。采用不同的具體解析器類,具體為各個(gè)文檔類型,Tika 支持大量的文件格式。這些格式的具體類不同的文件格式提供支持,無論是通過直接實(shí)現(xiàn)邏輯分析器或使用外部解析器庫。
使用的Tika facade類是從Java調(diào)用Tika的最簡單和直接的方式,而且也沿用了外觀的設(shè)計(jì)模式。可以在 Tika API的org.apache.tika包Tika 找到外觀facade類。通過實(shí)現(xiàn)基本用例,Tika作為facade的代理。它抽象了的Tika庫的底層復(fù)雜性,例如MIME檢測機(jī)制,解析器接口和語言檢測機(jī)制,并提供給用戶一個(gè)簡單的接口來使用。
四、案例
五、結(jié)論
總結(jié)
以上是生活随笔為你收集整理的Tika 1.16架构及核心模块的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android微信九宫格图片展示控件
- 下一篇: 正规的伦敦金投资平台排行榜(top 10