مكتبة مفتوحة المصدر لتحليل ملفات PDF بلغة Python
جرب مكتبة Python المجانية والمفتوحة المصدر لتحليل وقراءة واستخراج النصوص والصور والجداول والمحتويات الأخرى من مستندات PDF.
ما هو PyMuPDF؟
PyMuPDF، المعروف أيضًا باسم Fitz، هي مكتبة Python مفتوحة المصدر توفر مجموعة شاملة من الأدوات للعمل مع ملفات PDF. باستخدام PyMuPDF، يمكن للمستخدمين تنفيذ مهام بكفاءة مثل فتح ملفات PDF واستخراج النصوص والصور والجداول والتلاعب بخصائص الصفحة مثل التدوير والقص وإنشاء مستندات PDF جديدة وتحويل صفحات PDF إلى صور.
يدعم PyMuPDF العديد من الميزات المدرجة أدناه:
- قراءة مستندات PDF: يمكن لـ PyMuPDF فتح مستندات PDF وقراءتها، مما يسمح لك بالوصول إلى النصوص والصور والمحتويات الأخرى الموجودة فيها.
- استخراج النص: يمكنك استخراج النص من مستندات PDF، بما في ذلك محتوى النص والخطوط ومعلومات التخطيط.
- استخراج الصور: يمكنك استخراج الصور من مستندات PDF بتنسيقات مختلفة، مثل JPEG أو PNG.
- استخراج الجدول: يمكنك أيضًا استخراج الجداول من مستندات PDF.
في هذه المراجعة، سوف نركز بشكل أساسي على ميزات الاستخراج والتحليل للمكتبة. للحصول على تقييم متعمق لميزات التقسيم والدمج وإدارة الصفحات، يرجى النقر هنا.
البدء باستخدام PyMuPDF
تحتاج إلى إصدار Python 3.8.0 أو أعلى لتثبيت PyMuPDF واستخدامه. لذا، قم أولاً بتثبيت Python ثم استخدم الأوامر أدناه لتثبيت PyMuPDF على جهازك باستخدام pip وvirtual Environment.
لينكس
python -m venv pymupdf-venv
. pymupdf-venv/bin/activate
pip install pymupdf
ماك
python -m venv pymupdf-venv
. pymupdf-venv/bin/activate
pip install pymupdf
نوافذ
python -m venv pymupdf-venv
.\pymupdf-venv\Scripts\activate
pip install pymupdf
استخراج النص من ملف PDF
بإمكانك استخدام مكتبة PyMuPDF في Python لاستخراج النص من مستند PDF وإجراء تحليل نصي، مثل عد الكلمات، فقط عن طريق استخدام الوظائف المقدمة في المكتبة، كما هو موضح في الكود أدناه:
الناتج
الصورة أدناه توضح النص المستخرج وعدد الكلمات في ملف PDF:
استخراج الصور من ملف PDF
يمكننا استخدام مكتبة PyMuPDF لاستخراج الصور من مستند PDF في Python. يفتح مقتطف التعليمات البرمجية أدناه ملف PDF المحدد، ويستخرج الصور من PDF ويحفظها في دليل العمل الحالي:
الناتج
فيما يلي صورة PNG المستخرجة من مستند PDF
استخراج الجداول من ملف PDF
يمكننا أيضًا استخدام مكتبة PyMuPDF لمعالجة مستند PDF واستخراج الجداول منه. راجع مقتطف التعليمات البرمجية أدناه الذي يفتح ملف PDF المحدد ويستخرج الجداول من مستند PDF:
الناتج
تُظهر لقطة الشاشة أدناه الجدول المستخرج من مستند PDF:
إدراج النص في PDF
يوضح مقتطف الكود الخاص بـ Python أدناه استخدام مكتبة PyMuPDF لإدراج نص في ملف PDF وحفظ ملف PDF المعدل بصيغة text.pdf:
الناتج
يتم تمييز النص المدرج باستخدام الكود أعلاه في المربع الأحمر الموضح أدناه:
التعرف على نص PDF باستخدام OCR مع PyMuPDF
We will perform OCR on the PDF file containing the following image:الناتج
تُظهر الصورة أدناه النص المستخرج من الصورة الموجودة في ملف PDF المقدم:
خاتمة
باختصار، PyMuPDF هي أداة احترافية تتمتع ببعض نقاط القوة والضعف الواضحة. إنها رائعة لمهام مثل التعرف الضوئي على الحروف واستخراج النصوص، مما يجعلها مفيدة للتعامل مع النصوص في ملفات PDF.
ومع ذلك، فهو ليس جيدًا جدًا في استخراج الجداول من ملفات PDF، خاصةً عندما تكون ملفات PDF ذات بنية معقدة أو عدد أكبر من الصفحات، وهو ما قد يشكل عيبًا لبعض المستخدمين. كما قد يتطلب مكتبات إضافية مثل ملفات بيانات لغة Pandas وTesseract OCR في مواقف معينة، مما يزيد من تعقيد استخدامه. وعلى الرغم من هذه القيود، يظل PyMuPDF خيارًا قويًا للعمل مع النص في ملفات PDF.