Loading repository data…
Loading repository data…
Pythonation / repository
A powerful Python toolkit using Mistral AI's OCR to accurately convert Arabic PDFs and images to text and editable documents. Includes scripts for single-file and batch processing.
📺 اضغط هنا لمشاهدة الشرح الكامل والعملي على يوتيوب 📺
هذا المستودع يحتوي على الكود المصدري للمشروع الذي تم شرحه في الفيديو، والذي يوضح كيفية استخدام واجهة برمجة تطبيقات Mistral OCR، وهي ثورة حقيقية في مجال التعرف الضوئي على الحروف (OCR)، خاصة للغة العربية.
المشروع يهدف إلى حل مشكلة "سجون الوثائق الرقمية"، حيث يصعب استخراج النصوص من ملفات PDF الممسوحة ضوئياً والكتب القديمة. باستخدام قوة نماذج الذكاء الاصطناعي التوليدي (Generative AI) من Mistral AI، يمكننا تحويل أي وثيقة إلى نص قابل للتعديل بدقة وسرعة فائقتين، مما يفتح الباب لتحويلها بسهولة إلى ملفات Word أو أي صيغة أخرى.
Markdown، مما يسهل عملية تحويل PDF إلى WordBatchPdfConv.py ميزات احترافية مثل تتبع الحالة، وتسجيل الأخطاء، وإعادة المحاولة التلقائيةقبل البدء، تأكد من أن بيئة العمل لديك جاهزة:
git clone https://github.com/Pythonation/Mistral-Arabic-OCR-test.git
cd Mistral-Arabic-OCR-test
pip install mistralai python-dotenv
BatchPdfConv.py).env في المجلد الرئيسي للمشروعMISTRAL_API_KEY="ضع_مفتاحك_السري_هنا"
.env إلى .gitignore لحماية مفتاحك من الرفع العرضي إلى GitHubيحتوي المستودع على 3 ملفات رئيسية لتلبية احتياجاتك المختلفة:
docconv.py)سكربت بسيط ومباشر لمعالجة ملف PDF واحد. يستخدم مفتاح API مكتوب بشكل مباشر داخل الكود (Hardcoded)، وهو مناسب للتجارب السريعة.
طريقة التشغيل:
document.pdf في نفس المجلدpython docconv.py
Markdown مباشرة في الـ Terminaldocconv.ipynb)هذا الملف هو عبارة عن Jupyter Notebook ويحتوي على نفس كود معالجة الملف الواحد، ولكنه مقسم إلى خلايا مع شروحات باللغة العربية. إنه مثالي للأغراض التعليمية والتجربة خطوة بخطوة لفهم ما يفعله كل جزء من الكود.
طريقة التشغيل:
jupyter notebookdocconv.ipynb من متصفحك وقم بتشغيل الخلايا واحدة تلو الأخرىBatchPdfConv.py)هذا هو السكربت الأكثر قوة واحترافية، مصمم لمعالجة عدد كبير من الملفات بكفاءة وموثوقية.
الميزات المتقدمة:
processed_files.csv لتسجيل حالة كل ملف (ناجح/فاشل). إذا توقف السكربت، سيكمل من حيث توقف عند تشغيله مرة أخرى دون إعادة معالجة الملفات الناجحةconversion.log للمساعدة في تصحيح الأخطاء.env بدلاً من كتابته مباشرة في الكودطريقة التشغيل:
docdoc.env كما هو موضح في قسم التثبيتpython BatchPdfConv.py
Markdown الناتجة في المجلد الرئيسي للمشروعMistral-Arabic-OCR-test/
├── docconv.py # سكربت معالجة ملف واحد
├── docconv.ipynb # نسخة Jupyter Notebook تفاعلية
├── BatchPdfConv.py # سكربت المعالجة الدفعية المتقدم
├── document.pdf # ملف PDF للاختبار
├── docs_import/ # مجلد ملفات PDF المدخلة
├── docs_exports/ # مجلد ملفات Markdown المخرجة
├── .env # ملف إعدادات API (يجب إنشاؤه)
└── README.md # هذا الملف
خطأ في مفتاح API:
.envخطأ في تثبيت المكتبات:
pip install --upgrade pip
pip install mistralai python-dotenv
مشكلة في قراءة ملف PDF:
هذا المشروع يهدف إلى خدمة المجتمع العربي والمطورين. يمكنك المساهمة بعدة طرق:
هذا المشروع مرخص تحت رخصة MIT.
شكراً لـ Mistral AI على توفير هذه التقنية الرائعة، وللمجتمع العربي على دعمه المستمر.
⭐ إذا وجدت هذا المشروع مفيداً، لا تنس إعطاءه نجمة على GitHub!