Install
from pypdf import PdfReader, PdfWriterلمن يناسب
استخدم دليل pdf هذا عندما يذكر المستخدم ملف .pdf أو يطلب إنتاج ملف PDF. يغطي القراءة أو استخراج النص/الجداول، والدمج، والتقسيم، والتدوير، والعلامات المائية، والإنشاء، وملء النماذج، والتشفير/فك التشفير، واستخراج الصور، وOCR للمستندات الممسوحة لتسهيل البحث. ليس بديلاً عن قارئ معيّن، ولا يختار نيابة عنك خدمة تجارية غير مسمّاة.
الفرضية الأنسب: أن تنوي تنفيذ هذه العمليات الأساسية بمكتبات Python وأدوات سطر الأوامر. توضح المادة أن الميزات المتقدمة ومكتبات JavaScript والأمثلة الأدق موجودة في REFERENCE.md، فلا تعامل هذه المقدمة كدليل كامل. لا تقدم المادة قائمة بمنتجات وكلاء قابلة للاستخدام، ولا تعامل Python أو JavaScript كبيئة تشغيل وحيدة متنافية. صفحة الدليل الرسمية هي
https://raw.githubusercontent.com/anthropics/skills/main/skills/pdf/SKILL.md
أكمل أول محاولة في 3 دقائق
المسار الأول الموصى به هو مثال القراءة بـ pypdf الوارد في المادة، لا اختراع مثبّت آخر. الشرط المسبق: Python موجود أصلًا على الجهاز ويمكنك تنفيذ from pypdf import PdfReader, PdfWriter. إذا فشل الاستيراد، توقف عند خطأ الاستيراد ولا تعِد كتابة ملف PDF.
أول محاولة منخفضة المخاطر: جهّز ملف document.pdf محليًا موجودًا مسبقًا. تأكد أولاً من وجود الملف، ثم افتحه للقراءة فقط واطبع عدد الصفحات:
from pypdf import PdfReader, PdfWriter
reader = PdfReader("document.pdf")
print(f"Pages: {len(reader.pages)}")
إشارة النجاح: تطبع الطرفية Pages: متبوعة برقم. هذه قراءة، وليست دمجًا أو تشفيرًا أو استبدالًا. إذا لم يوجد الملف، توقف عند فشل الفتح؛ لا تنشئ أو تنزّل ملف PDF غير مسمّى. يُستورد PdfWriter في السطر نفسه، لكن لا تستدعِ الكتابة إلى القرص في المحاولة الأولى.
حالات الاستخدام
الحالة الأولى: تأكيد عدد صفحات ملف PDF محلي واتخاذ ذلك نقطة انطلاق للاستخراج لاحقًا. العملية هي PdfReader("document.pdf") و len(reader.pages) أعلاه. تسرد المادة القراءة واستخراج النص/الجداول كقدرات، لكن المقتطف يكتب بالكامل فقط طباعة عدد الصفحات، لذا معيار الإكمال الأول هو الحصول على عدد الصفحات. إذا احتجت النص أيضًا، عد إلى الصفحة نفسها وابحث عن الاستدعاء المقابل؛ لا تعامل مخرجات عدد الصفحات كما لو أن النص الكامل قد استُخرج.
الحالة الثانية: تحتاج إلى ملء نموذج PDF. تقول المادة: If you need to fill out a PDF form, read FORMS.md and follow its instructions. لذلك الخطوة الأولى في هذا المسار هي فتح FORMS.md واتباع خطواته، لا اختراع حقول النموذج أو أوامر الحفظ في هذه الصفحة. معيار الإكمال هو أنك بدأت وفق FORMS.md، لا افتراض أن النموذج قد أُرسل. إذا كان الهدف الحقيقي OCR لمسح ضوئي، تعطي المادة على حدة pip install pytesseract pdf2image و convert_from_path؛ هذا مسار آخر يتطلب تبعيات إضافية، فلا تخلطه مع ملء النموذج في خطوة واحدة.
حدود الاستخدام
العمليات الأساسية موجّهة لمكتبات Python وأدوات سطر الأوامر؛ المحتوى المتقدم وJavaScript والأمثلة التفصيلية تشير إلى REFERENCE.md ولم تُبسَط هنا. يحتاج OCR إلى pytesseract و pdf2image؛ حوّل الصفحات إلى صور أولاً. يجب أن يمر ملء النماذج عبر FORMS.md.
لا تقدم المادة حزمة تثبيت بواجهة رسومية ولا قائمة عملاء. الدمج والتقسيم والتدوير والعلامة المائية والتشفير واستخراج الصور مذكورة كقدرات، لكن المقتطف لا يعطي أوامر كاملة لهذه العمليات، فلا تكتبها كخطوات جاهزة للنسخ. قبل الكتابة إلى القرص أو التشفير أو استبدال الملف الأصلي، أكّد مسار الوجهة والآثار الجانبية ثم نفّذ.