Tika提取pdf文字的內容,並用IKAnalyzer進行分詞處理。
package test;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import org.apache.tika.metadata.Metadata;
import org.apache.tika.parser.AutoDetectParser;
import org.apache.tika.parser.ParseContext;
import org.apache.tika.parser.Parser;
import org.apache.tika.sax.BodyContentHandler;
import org.xml.sax.ContentHandler;
/**
* 此類用於提取pdf檔案的文字內容
*
* @author gujie
*
*/
public class TikaUtil {
public String getBody(File file) throws Exception {
Parser parser = new AutoDetectParser();
InputStream input = new FileInputStream(file);
Metadata meta = new Metadata();
System.out.println(meta.get(Metadata.CONTENT_ENCODING));
ContentHandler handler = new BodyContentHandler();
parser.parse(input, handler, meta, new ParseContext());
return handler.toString();
}
public static void main(String[] args) {
try {
System.out.println(new TikaUtil().getBody(new File("f:\\哈哈哈哈.pdf")));
} catch (Exception e) {
e.printStackTrace();
}
}
}
package test;
import java.io.File;
import java.io.IOException;
import java.io.StringReader;
import org.wltea.analyzer.IKSegmentation;
import org.wltea.analyzer.Lexeme;
/**
* 此類用於處理分詞
* @author gujie
*
*/
public class IKAnalyzerTest {
/**
* @param args
*/
public static void main(String[] args) throws Exception {
long start = System.currentTimeMillis();
IKSegmentation ikSeg = new IKSegmentation(new StringReader(new TikaUtil().getBody(new File("f:\\哈哈哈哈.pdf"))) ,true);
long end = System.currentTimeMillis();
try {
Lexeme l = null;
while( (l = ikSeg.next()) != null){
System.out.println(l.getLexemeText());//迴圈打印出分詞之後的結果
}
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("耗時:"+(end-start)+"毫秒");
}
}
相關推薦
Tika提取pdf文字的內容,並用IKAnalyzer進行分詞處理。
package test; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; import org.apache.tika.metadata.Metadata;
Java 讀取PDF文字內容
本文將介紹如何在Java應用程式中讀取PDF檔案的文字內容。 在Java應用程式中讀取PDF,我們可以藉助第三方PDF控制元件,本文所使用的控制元件是免費Java PDF元件Free Spire.PDF for JAVA。 在使用以下程式碼前,你需要下載Free Spire.PDF fo
jquery 如何獲取標籤本身的文字內容,不包含子元素
<li><a href="http://gz.ihk.cn/esf/houselist/?lp=保利花園" ><strong id="aaaa">保利花園<b>海珠 工業大道中</b></strong></a&
完成一個“可以由使用者鍵入文字內容,並輸出其字元個數”的Java應用程式
一、任務目標 完成一個 java application應用程式,可以接收使用者通過鍵盤輸入的文字,並輸出此段文字字元的個數。 二、Scanner類 Scanner是JDK1.5新增的一個類,可以使用該類建立一個物件。它是一個可以使用正則表示
用python提取PDF表格內容儲存到excel
一 提取pdf方法介紹 任務是用python提取PDF裡的表格檔案到excel裡面去。做為一個 學了一個周python的人來說當然像嘗試一下看能不能做到,事實證明是可以的只是可能程式碼有點爛。。。。。。 樣本大概是這樣的 首先網上查一下用python處
點選複製按鈕複製指定文字內容,實現網頁中的複製功能
<div style="width: 48px; height: 36px; position: absolute; margin-left: 232px;*margin-left:0px;_margin-left: 0">
js處理去掉富文字編輯的html,樣式,只顯示純文字內容,以供列表頁使用
<script type="text/javascript"> var description = '<p style="margin-top:19.5pt;margin-right:0cm;margin-bottom:19.5pt;margin-lef
pdf轉圖片、提取pdf文字、提取pdf圖片
package com.midevip.common.util; import com.itextpdf.text.pdf.PdfReader;
java/poi讀取word,並替換word中的文字內容,向word中插入圖片的操作
先貼程式碼,注:部分程式碼源自網路其他前輩的文章,這裡只是做一個功能整合。 package fcjTool; import java.io.IOException; import java.io.InputStream; import org.ap
java提取PDF文字座標
常用java操作PDF的庫有PDFbox和itext,下面我會介紹如何使用PDFbox和itext來提取PDF的文字座標。 一、itext提取文字座標 itext版本:5.5.6,低版本的可能沒有提供這種方法。 1、通過定義一個類實現RenderListener,可以通過裡
單行和多行的文字省略,並用省略號代替
單行文字省略: { overflow:hidden; //超出部分隱藏 white-space:nowrap; //強制不換行 text-overflow:ellipsis //省略號 }; 寫在css裡,很簡單的三行程式碼,但是注
2.5給定兩個用鏈表表示的整數,每個結點包含一個數位。這些數位是反向存放的,也就是個位排在鏈表首部。編寫函數對這兩個整數求和,並用鏈表形式返回結果。
直接 logs next 末尾 做的 nbsp before != 結果 其實仔細想想是挺簡單的,我們要做的只是記得進位。 LinkedListNode addLists(LinkedListNode l1, LinkedListNode l2, int carry) /
【Apache】從Apache官網下載windows版apache伺服器,並用AB進行壓力測試
1、下載穩定版2.2.31 http://httpd.apache.org/ 2.2.*和2.4.*區別? httpd-2.2.x(prefork) httpd-2.4.x(event) 編譯時可以使用--with-mpm=prefork手動指定
文字分析--關鍵詞獲取(jieba分詞器,TF-IDF模型)
關鍵詞獲取可以通過兩種方式來獲取: 1、在使用jieba分詞對文字進行處理之後,可以通過統計詞頻來獲取關鍵詞:jieba.analyse.extract_tags(news, to
手把手教程:用Python開發一個自然語言處理模型,並用Flask進行部署
今年企業對Java開發的市場需求,你看懂了嗎? >>>
用量子計算模擬器ProjectQ生成隨機數,並用pytest進行單元測試與覆蓋率測試
# 技術背景 本文中主要包含有三個領域的知識點:隨機數的應用、量子計算模擬產生隨機數與基於pytest框架的單元測試與覆蓋率測試,這裡先簡單分別介紹一下背景知識。 ## 隨機數的應用 在上一篇介紹[量子態模擬取樣](https://www.cnblogs.com/dechinphy/p/state.html)
python中文分詞,使用結巴分詞對python進行分詞
php 分詞 在采集美女站時,需要對關鍵詞進行分詞,最終采用的是python的結巴分詞方法.中文分詞是中文文本處理的一個基礎性工作,結巴分詞利用進行中文分詞。其基本實現原理有三點:基於Trie樹結構實現高效的詞圖掃描,生成句子中漢字所有可能成詞情況所構成的有向無環圖(DAG)采用了動態規劃查找最大概率
輸入一串隨機數字,然後按千分位輸出。
shell腳本 千分位輸出 for循環 切片數組 輸入一串隨機數字,然後按千分位輸出。比如輸入數字串為“123456789”,輸出為123,456,789#!/bin/bash read -p "輸入一串數字:" num v=`echo $num| sed 's/[
使用js方法將table表格中指定列指定行中相同內容的單元格進行合並操作。
var get 是否 for true ntb doc ide 就是 一、簡介 使用js方法對html中的table表格進行單元格的行列合並操作。 網上執行此操作的實例方法有很多,但根據實際業務的區別,大多不適用。 所以在網上各位大神寫的方法的基礎上進行了部分修改以適合自己
IKAnalyzer中文分詞器V2012_FF使用手冊
nal nbsp 使用手冊 href 分詞 analyzer ref 使用 中文分詞 IKAnalyzer中文分詞器V2012_FF使用手冊.pdfIKAnalyzer中文分詞器V2012_FF使用手冊