實(shí)驗(yàn)對象:Apache Tika
實(shí)驗(yàn)?zāi)康模和ㄟ^嘗試使用Apache Tika進(jìn)行文件格式轉(zhuǎn)換笆包,加深對搜索引擎的理解和認(rèn)識
目錄
- Apache Tika簡介
- 配置Apache Tika運(yùn)行環(huán)境
- 用GUI圖形界面進(jìn)行文件格式轉(zhuǎn)換的嘗試
- 用命令行使用Tika
- 在java工程中使用Tika
1. Apache Tika 簡介
Apache Tika是一個(gè)用java編寫的內(nèi)容檢測和分析框架瑰抵,是Apache的Lucene項(xiàng)目的子項(xiàng)目。它能夠檢測很多不同文件類型的文件,并提取文件的元數(shù)據(jù)和結(jié)構(gòu)化文本房官。它提供了一個(gè)命令行界面和一個(gè)GUI界面袖牙,還提供一個(gè)java庫∥衷担可用于自然語言處理過程中文本內(nèi)容的抽取躯枢,以及搜索引擎進(jìn)行數(shù)據(jù)抓取后的處理步驟。
Tika 架構(gòu)
Tika 體系結(jié)構(gòu)的四個(gè)模塊
- 語言檢測機(jī)制
- MIME檢測機(jī)制
- Parser接口
- Tika Facade類
Tika主要功能
- 文檔類型檢測
- 內(nèi)容提取
- 元數(shù)據(jù)提取
- 語言檢測
2. 配置Apache Tika運(yùn)行環(huán)境
驗(yàn)證java環(huán)境
如果沒有配置java環(huán)境槐臀,請下載并配置Java JDK
下載Tika的源代碼Mirrors for tika-1.14-src.zip和Tika的jar包Mirrors for tika-app-1.14.jar
在cmd里鍵入命令打開GUI圖形界面
3. 用GUI圖形界面進(jìn)行文件格式轉(zhuǎn)換的嘗試
編寫一個(gè)二進(jìn)制文件tika_test.txt放在C:\目錄下
把tika_test.txt拖進(jìn)gui里锄蹂,默認(rèn)顯示提取的元數(shù)據(jù)
解析成Formatted Text
解析成Plain text
提取Main content 居然是空的
解析成XML
解析成json
4. 用命令行使用Tika
先來查看Tika命令行的基本參數(shù)
用命令把doc解析為text
5. 在java工程中使用Tika
在Eclipse中新建Java項(xiàng)目,并導(dǎo)入tika-app-1.14.jar
編寫Test.java
import org.apache.tika.Tika;
import java.io.*;
/**
* Created by Administrator on 2017/5/15.
*/
public class Test {
public static void main(String[] args) throws Exception{
//二進(jìn)制文件路徑
String fileName="c:/tika_test.txt";
//二進(jìn)制文件
File file1 = new File(fileName);
//通過tika獲取文件內(nèi)容
Tika tika = new Tika();
String filecontent = tika.parseToString(file1);
//打印文件內(nèi)容
System.out.println("Extracted Content: " + filecontent);
try{
//要轉(zhuǎn)換到的文件
File file =new File("c:/ddd.doc");
//文件不存在就新建
if(!file.exists()){
file.createNewFile();
}
//把二進(jìn)制文件內(nèi)容寫入doc文件
FileWriter fw = new FileWriter(file.getAbsoluteFile());
BufferedWriter bw = new BufferedWriter(fw);
bw.write(filecontent);
bw.close();
System.out.println("Done");
}catch(IOException e){
e.printStackTrace();
}
}
}
運(yùn)行程序
生成ddd.doc,如下圖
參考鏈接:
Apache Tika from EN-Wikipedia
Tika常見格式文件抽取內(nèi)容并做預(yù)處理
Apache Tika:通用的內(nèi)容分析工具
cmd中java -jar *.jar 提示Unable to access jarfile *.jar或Windows不能用鼠標(biāo)雙擊運(yùn)行jar文件怎么辦解決方案
TIKA環(huán)境配置
相關(guān)鏈接:
Apache Tika 官網(wǎng)
Apache Tika Wiki
Apache Tika in Github
Book Tika in Action
Natural Language Processing with Python
潛在語義索引