![[Open Source] PDF 資料提取神器將至,高效資料處理時機到! [Open Source] PDF 資料提取神器將至,高效資料處理時機到!](https://i0.wp.com/raw.githubusercontent.com/opendataloader-project/opendataloader-pdf/main/samples/image/example_annotated_pdf.png?ssl=1)
你好,台灣!用 OpenDataLoader PDF 輕鬆提取 PDF 裡的資料,告別手動整理的痛苦!
嗨,大家好!👋 我是 [你的名字],今天想和大家分享一個超棒的工具,特別適合常常需要處理 PDF 文件的朋友們。 相信大家一定都有過這種經驗:手邊有一堆 PDF 文件,想把裡面的資料提取出來,不管是做研究、整理報告,還是餵給 AI 模型,都得花上一堆時間複製貼上,是不是超煩人的? 😩
別擔心!今天介紹的 OpenDataLoader PDF 就能幫你解決這個問題,而且它還是 開放原始碼 的,完全免費使用! 🥳
什麼是 OpenDataLoader PDF? 🤔
簡單來說,OpenDataLoader PDF 是一個 PDF 解析工具,它能幫你從 PDF 文件中 提取文字、表格、圖片 等資料,並 轉換成你更容易處理的格式,像是 Markdown、JSON,甚至是 HTML。
它最厲害的地方在於,它不只解析,還能 保留資料的結構。 意思就是,它會盡可能地保持表格的樣式、標題的層級,以及文字的順序,讓你提取出來的資料可以直接使用,不必再花時間重新整理。
為什麼 OpenDataLoader PDF 值得一試? 💯
- 超準確的資料提取: OpenDataLoader PDF 在各種評測中都名列前茅,尤其在處理 表格 方面,準確度超高! 就算是複雜的表格,它也能正確地抓取資料。
- 支援掃描檔 & 複雜文件: 即使你的 PDF 是掃描檔,或是包含複雜表格、公式、圖表的,OpenDataLoader PDF 也能應付自如。 它內建了 OCR (光學字元辨識) 功能,能把掃描檔裡的文字辨識出來。
- 快速又容易上手: 使用 OpenDataLoader PDF 非常簡單,只要幾個指令就能開始提取資料。 它支援 Python、Node.js 和 Java,你可以根據自己的習慣選擇。
- 方便用於 AI 應用: 提取出來的資料格式,非常適合用於 RAG (Retrieval-Augmented Generation) 和其他 AI 應用。 它可以直接餵給 LLM (大型語言模型) 做分析,或是用於建立知識庫。
- 免費、開放原始碼: 它是完全免費的,而且是開放原始碼,你可以自由使用、修改,不用擔心版權問題。
- 未來將支援 PDF 輔助功能: OpenDataLoader PDF 的開發團隊正與 PDF Association (PDF 協會) 合作,未來將推出自動標記 (auto-tagging) 功能,讓你的 PDF 文件更容易符合 無障礙規範! 這對台灣來說,也越來越重要了!
如何快速上手? 🚀
讓我們來看看,如何在 Python 環境下快速使用 OpenDataLoader PDF:
1. 安裝:
首先,請確認你的電腦裡有安裝 Python 3.10 以上版本,以及 Java 11+ (如果你沒有安裝 Java,可以從 Adoptium 下載)。
接著,開啟終端機 (Terminal) 或命令提示字元 (Command Prompt),輸入以下指令安裝 OpenDataLoader PDF:
pip install -U opendataloader-pdf
2. 提取資料:
安裝完成後,你可以寫一段 Python 程式碼來提取 PDF 裡的資料。 以下是一個簡單的例子:
import opendataloader_pdf
# 指定要提取的 PDF 文件路徑,可以是單一檔案、多個檔案,或是資料夾
input_path = ["你的檔案.pdf", "另一個檔案.pdf", "資料夾/"] # 記得改成你的 PDF 文件路徑!
# 指定輸出資料夾
output_dir = "output/"
# 提取資料,並轉換成 JSON 和 Markdown 格式
opendataloader_pdf.convert(
input_path=input_path,
output_dir=output_dir,
format="markdown,json" # 可以選擇 markdown、json、html,或是混合格式
)
3. 執行程式:
把上面的程式碼儲存成一個 Python 檔案 (例如 extract_pdf.py),然後在終端機或命令提示字元中執行:
python extract_pdf.py
程式執行完畢後,你就會在 output/ 資料夾裡看到提取出來的 JSON 和 Markdown 檔案。
更多進階功能,讓你的資料提取更上一層樓! 🤩
OpenDataLoader PDF 除了基本的提取功能之外,還有許多進階功能,可以讓你的資料提取更精準、更方便:
- Hybrid Mode (混合模式): 如果你的 PDF 包含複雜的表格、掃描檔,或是公式、圖表,可以啟用 Hybrid Mode。 Hybrid Mode 會自動把複雜的頁面交給 AI 後端處理,大幅提高提取的準確度。 想要啟用 Hybrid Mode,你需要額外安裝一個套件,並啟動 AI 後端服務。
- 安裝 Hybrid Mode 所需的套件:
pip install "opendataloader-pdf[hybrid]"- 啟動 AI 後端服務:
opendataloader-pdf-hybrid --port 5002 # 預設使用 5002 port- 使用 Hybrid Mode 提取資料:
import opendataloader_pdf # ... 其他程式碼 ... opendataloader_pdf.convert( input_path=input_path, output_dir=output_dir, format="markdown,json", hybrid="docling-fast" # 啟用 Hybrid Mode,"docling-fast"是其中一種設定 ) - OCR 支援: 如果你的 PDF 是掃描檔,可以使用 Hybrid Mode 中的 OCR 功能。 啟用 OCR 後,OpenDataLoader PDF 就能辨識掃描檔中的文字。
- 啟動 Hybrid Mode 並強制 OCR:
opendataloader-pdf-hybrid --port 5002 --force-ocr- 指定 OCR 語言 (支援繁體中文):
opendataloader-pdf-hybrid --port 5002 --force-ocr --ocr-lang "zh_TW,en" # 這裡 "zh_TW" 代表繁體中文,"en" 代表英文- 使用 Hybrid Mode 和 OCR 提取資料: (程式碼與上面相同)
- 公式提取: 針對包含數學公式的 PDF,OpenDataLoader PDF 可以提取公式的 LaTeX 碼。
- 啟動 Hybrid Mode 並啟用公式提取:
opendataloader-pdf-hybrid --enrich-formula- 使用 Hybrid Mode 和公式提取資料: (程式碼與上面相同)
- 使用 –hybrid-mode full 參數: 在程式碼中,需要在 hybrid 模式設定中加入
--hybrid-mode full:
opendataloader_pdf.convert( input_path=input_path, output_dir=output_dir, format="json", # 為了方便觀察,這裡使用 JSON 格式 hybrid="docling-fast", --hybrid-mode full # 加入這行 ) - 圖片和圖表描述: OpenDataLoader PDF 可以為圖表和圖片生成 AI 描述,這對 RAG 搜索和無障礙功能很有幫助。
- 啟動 Hybrid Mode 並啟用圖片描述:
opendataloader-pdf-hybrid --enrich-picture-description- 使用 Hybrid Mode 和圖片描述資料: (程式碼與上面相同)
- 使用 –hybrid-mode full 參數: 在程式碼中,需要在 hybrid 模式設定中加入
--hybrid-mode full:
opendataloader_pdf.convert( input_path=input_path, output_dir=output_dir, format="json", # 為了方便觀察,這裡使用 JSON 格式 hybrid="docling-fast", --hybrid-mode full # 加入這行 ) - AI 安全性: OpenDataLoader PDF 內建了 AI 安全性 功能,可以過濾 PDF 中潛在的惡意程式碼。
-
LangChain 整合: 透過安裝
langchain-opendataloader-pdf套件,OpenDataLoader PDF 可以與 LangChain 輕鬆整合。 LangChain 是一個強大的 Python 框架,可以用於開發基於 LLM 的應用。
常見問題解答 (FAQ) 🙋♀️
-
Q: OpenDataLoader PDF 真的免費嗎?
- A: 是的,OpenDataLoader PDF 的核心功能是 免費且開放原始碼 的,可以自由使用於商業用途。
- Q: 我可以用 OpenDataLoader PDF 來處理中文 PDF 嗎?
- A: 可以!OpenDataLoader PDF 完全支援中文 PDF 的提取,尤其是 Hybrid Mode 裡的 OCR 功能,對於掃描檔的中文 PDF 也能輕鬆處理。
- Q: OpenDataLoader PDF 的 Hybrid Mode 是什麼?
- A: Hybrid Mode 是 OpenDataLoader PDF 的進階功能,它會自動判斷 PDF 中的複雜頁面 (例如複雜表格、掃描檔),然後交給 AI 後端處理,以提高提取的準確度。
- Q: 哪裡可以找到更多關於 OpenDataLoader PDF 的文件?
- A: 你可以在官方網站上找到詳細的文件和範例: https://opendataloader.org/
結語 🎉
OpenDataLoader PDF 是一個功能強大、操作簡單的 PDF 提取工具,它能幫助你節省大量的時間,讓你能更專注於資料分析和 AI 應用。 如果你常常需要處理 PDF 文件,或是對 AI 應用有興趣,不妨試試 OpenDataLoader PDF 吧! 相信它會給你帶來意想不到的驚喜!
希望這篇文章對你有幫助! 如果你有任何問題,歡迎在底下留言,我們一起交流討論! 😊
祝大家都能輕鬆駕馭 PDF 文件,資料處理效率 UP UP! 💪
參考閱讀
https://github.com/opendataloader-project/opendataloader-pdf