我正在努力從一組 pdf 檔案中提取單詞。這些檔案是我從網上下載的學術論文。
資料存盤在我的本地設備中,按名稱排序,遵循專案檔案夾中的相對路徑:'./papers/data'。
然而,一個例外是 Hernadez_2005,因為它是影像,因此提取需要 OCR 轉換,并且編輯器對處理科學術語和外來連字符進行大量(不是微不足道的)培訓,加上不斷變化的風格。但是可以通過一些作業說寫字板產生足夠好的結果,適合在 Microsoft Word 中編輯,您可以將其保存為純文本以便在 Python 中決議。

uj5u.com熱心網友回復:
是的,這是提取的問題。您提到的兩個示例檔案中的空格是不同的:


PDF 通常沒有一個始終清晰的線條和單詞概念。它們在檔案中的某些位置放置了字符/文本框。提取無法像 txt 檔案那樣“逐個字符”地讀取它,它從左上角到右下角對其進行決議,并使用距離來假設什么是行、什么是單詞等。因為第一張圖片似乎不僅使用了空格字符,而且還使用了左右兩邊的字符邊距來為文本創建更好的間距,決議器很難理解它。
每個 Parser 的做法都會略有不同,因此嘗試一些不同的決議器可能是有意義的,也許另一個決議器是在具有相似模式的檔案上訓練/設計的,并且能夠正確決議它。此外,由于示例中的 PDF 確實具有所有有效空格,但是通過將字符彼此靠近一些負邊距的東西來混淆決議器,正常復制和粘貼到 txt 檔案不會有這個問題,因為它忽略邊際的東西。
如果我們談論的是大量資料并且您愿意花更多時間在這方面,您可以查看一些關于光學字符識別后校正 (OCR Post Correction)的資源,這些模型試圖修復決議錯誤的文本(盡管它通常更多地關注通過不同字體等無法正確識別字符的問題,而不是間距問題)。
uj5u.com熱心網友回復:
PyPDF2 自 2018 年以來未維護。
問題是因為有很多網頁在網上推薦 PyPDF2,但實際上現在沒有人使用它。
我最近做了同樣的事情,直到意識到 PyPDF2 已經死了。我最終使用了https://github.com/jsvine/pdfplumber。它得到積極維護,簡單且性能非常好
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/447062.html
上一篇:生成PDF用戶密碼哈希
