السبت , ديسمبر 7 2019
الرئيسية / برامج وحلول / استخراج النصوص من ملفات PDF باستخدام Python
x2coder python teaching extract text

استخراج النصوص من ملفات PDF باستخدام Python

تدوينتي لليوم مخصصة لمحبين لغة البايثون ومستوى التدوينة  ” متوسط ” , جميعنا يعلم ان ملفات PDF وايضاً ملفات Word هي ملفات Binary وهذا يعني انها معقدة من ملفات النصوص العادية مثل .TXT وهذا بسبب ان ملف مثل PDF يخزن الخطوط و معلومات اضافية اخرى بداخله مما يجعلنا غير قادرين على فتح الملف باستخدام محرر النصوص العادي مثل المحرر الشهير Notepad وفي بعض الحالات يحتاج المبرمج الى قراءة محتويات ملف  الـ PDF والتعامل مع محتوياته مثل قراءة فاتورة بشكل تلقائي لهذا السبب قررت ان اكتب هذه التدوينة واشرح فيها كيف نستطيع قراءة النص الموجود داخل ملف PDF باستخدام لغة Python وبشكل بسيط .

 

شرح ملفات PDF :

كلمة PDF هي اختصار يرمز الى Portable Document Format وتستخدم الصيغة .pdf وعلى الرغم ان ملفات pdf تدعم العديد من الخصائص الا انني في هذه التدوينة اكتفي بشرح برنامج يقوم باستخراج النص من هذه الملفات برمجياً دون استخدام  اي محرر .

 

تنصيب المكتبة :

جميعنا يعلم ان لغة البايثون تحتوي على الكثير من المكتبات و الاضافات التي من شأنها تسهل عملية البرمجة وهذا من اشهر الاسباب التي تجذب الجميع من المطورين لاستخدامها ومن هذه الاضافات اضافة اسمها PyPDF2 والتي تتعامل مع كل ما يخص PDF لذلك فالبداية يجب علينا تثبيت هذه المكتبة باستخدام الامر التالي

بالتأكيد نضع هذا الامر في Terminal وايضاً يجب ان تنتبه ان اسم المكتبة يحتوي على حساسية الاحرف بمعنى اخر يجب ان تكتب PyPDF2 مع مراعاة الحروف الكبيرة و الصغيرة وللتأكد من ان المكتبة تم تنصيبها تستطيع الذهاب الى Terminal وكتابة التالي

بداية السطر كلمة python وهذا من اجل تشغيل Interactive shell والسطر الثاني استدعاء المكتبة وبعد الضغط على Enter يجب ان لا ترى اي خطأ اذا تم تثبيت المكتبة بشكل صحيح .

 

ملف PDF برمجياً :

ملف PDF هو الخيار الامثل في تنسيق المستندات و حفظها بتنسيق مرتب و أنيق ولا تجعل الملف مختلف من جهاز الى اخر مثل ما يحدث في ملفات Word عند عرضها , ولكن يجب ان ننتبه ان مكتبة PyPDF2 ربما تولد بعض الاخطاء عندما تقوم باستخراج النصوص من هذه الملفات وفي بعض الاحيان ربما تفشل في قراءة الملف بشكل كامل ولسوء الحظ لا تستطيع حل هذه المشكلة لان السبب في ذلك ان المكتبة لا تستطيع التعامل مع بعض ملفات PDF والتي صممت بطريقة جداً معقدة مثلا تحتوي على تنسيقات كثيرة او خطوط غير مدعومة من الجهاز  وللمعلومية الى الان لم اجد ملف PDF لم استطع قراءته باستخدام PyPDF2 .

 

استخراج النص من ملف PDF :

إن مكتبة PyPDF2 لا تستطيع استخراج الصور او الوسائط في ملفات PDF بل انها تستطيع فقط استخراج النصوص وتعود الينا بنص ومن اجل فهم كيف تعمل هذه المكتبة سوف نقوم باستخراج نص من المثال التالي

تحميل : مثال ملف PDF

هذا الكود يستطيع قراءة ما بداخل الملف وسوف يطبعه وايضا يقوم بطباعة عدد الصفحات الموجودة في ملف PDF .

 

 

هكذا انتهينا من الدرس واتمنى لكم يوماً سعيداً .

تحياتي لكم

 

 

 

image sources

  • Python-x2coder: كودر

عن كودر

[ كـودر ] مهندس برمجة , أحب التقنية , مُطوّر انظمة و تطبيقات , مهووس بالتقنية وكل جديد في عالم الإنترنت , أحب الكتابة عن التقنية عندما تسمح لي الفرصة .

شاهد أيضاً

شرح Curl للتفاعل مع Web service

الانترنت يحتوي على الكثير من الخدمات التي نراها في مواقع عالمية كثيرة على سبيل المثال …

2 تعليقان

  1. بسم الله وحده و الصلاة و السلام على من لا نبي بعده ثم أما بعد:
    لدي python 3.5 و لا توجد في مكتبته PyPDF2 فما هو السبيل لتثبيتها فيه و شكرا

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

*