[英]Text Extraction on a Generated PDF report in Java
我有超過6500名學生的學術成績PDF。 我沒有訪問實際數據庫的權限,我夢dream以求的是從這個漫長而又格式合理的文檔中提取數據。 此數據將用於分析和可視化目的。
請幫我
提前致謝。
是否可以提取此數據?
是。 PDF包含從文檔中提取文本數據所需的所有信息。 此外,表格列似乎在每個頁面上的相同位置開始。
一種方法是提取文本而不破壞布局。 對於所討論的文檔而言,這是非常明智且容易的,因為它是從純文本文件開始創建的。 然后,您可以逐行分析該文本。
如果是的話,編寫代碼需要花費多少時間?
這取決於編碼人員的技能。 文本提取將使用某些PDF庫完成,因此僅保留對文本的分析,並且在您的文件看起來很簡單的情況下。 在第一天就可以進行概念驗證,而整個過程不超過一周。
一些工具和庫最好使用JAVA。
有多個開源庫(我想到的是iText,PDFBox,PDFClown;一定要了解各自的許可條件),此外,還有許多開源庫也提供文本提取功能。
鏈接到教程或指南。
教程/指南/樣本通常可以在所選庫的網站上找到。
我的建議是嘗試幾個這樣的庫,並檢查它們的文本提取輸出是否符合原始布局,它們的性能是否足夠,它們的資源要求是否可以接受以及它們的許可條件是否適合您。
(以下是與最初提供的PDF有關的原始答案,該PDF是為防止文本提取而構建的)
是否可以提取此數據?
雖然您的文檔的格式看上去確實不錯 ,但是嚴格來說,它不包含任何文本。 您可能已經嘗試過從PDF查看器復制和粘貼,並且對它無法提取任何內容感到失望。
您的PDF代替了文本繪制操作(通常或多或少地從中提取文本),而是使用了路徑繪制操作,即線條,曲線等,並且它們對每個單個字母使用許多操作來繪制文本。 順便說一下,這解釋了文件的巨大大小。
因此,無法立即從文檔中提取文本。 您要么必須瀏覽內容,要么識別繪制操作以創建單個字母,然后從中創建文本; 否則您必須將PDF渲染為位圖並應用OCR。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.