الوحدة zipfile
في بايثون
تعدّ ملفات ZIP من ملفات الأرشفة والضغط الأكثر شيوعًا. تقدّم هذه الوحدة أدواة لإنشاء ملفات ZIP والقراءة منها والكتابة فيها وإلحاق الملفات بها وعرض محتوياتها. يتطلّب الاستخدام المتقدّم لهذه الوحدة فهمًا جيّدًا لصيغة الملفات ZIP والمعرّفة في دليل التطبيق PKZIP.
لا تتعامل هذه الوحدة في الوقت الحاضر مع ملفات ZIP متعددة الأقراص، ولكن يمكنها التعامل مع ملفات ZIP التي تستخدم الإضافة ZIP64 (أي ملفات ZIP التي يتجاوز حجمها 4 GiB). يمكن استخدام الوحدة كذلك لفكّ التعمية عن الملفات المعمّاة encrypted files في أرشيف ZIP، ولكنّ لا يمكن للوحدة إنشاء ملفّات معمّاة في الوقت الحاضر. ويجدر التنبيه إلى أنّ عملية فك التعمية بطيئة للغاية لأنّها تنفّذ باستخدام شيفرة مكتوبة بلغة بايثون عوضًا عن لغة C.
استثناءات الوحدة zipfile
الاستثناء zipfile.BadZipFile
يُطلق هذا الاستثناء عند استخدام ملفات ZIP معطوبة.
ملاحظة: هذا الاستثناء جديد في الإصدار 3.2 من بايثون.
الاستثناء zipfile.BadZipfile
اسم مستعار Alias للاستثناء BadZipFile
ويستخدم لأغراض التوافق مع إصدارات بايثون القديمة.
أهمل هذا الاستثناء منذ الإصدار 3.2 من بايثون.
الاستثناء zipfile.LargeZipFile
يُطلق هذا الاستثناء عندما يحتاج ملف ZIP إلى الإضافة ZIP64 ولكنّها تكون غير مفعّلة.
كائنات ZipFile
يستخدم هذا الصنف لقراءة ملفات ZIP والكتابة فيها.
كائنات PyZipFile
يستخدم هذا الصنف لإنشاء ملفات ZIP تتضمّن مكتبات بايثون.
كائنات ZipInfo
يستخدم هذا الصنف لعرض المعلومات الخاصّة بعضو من أعضاء ملف الأرشيف.
دوال الوحدة zipfile
الدالة is_zipfile()
تتحقق الدالة ممّا إذا كان ملف ZIP المعطى صالحًا للاستخدام أم لا وذلك بالاستناد إلى العدد السحري magic number الخاص بالملف.
ثوابت الوحدة zipfile
zipfile.ZIP_STORED
الثابت العددي لعضو غير مضغوط في الأرشيف.
zipfile.ZIP_DEFLATED
الثابت العددي الخاص بعملية الضغط بطريقة ZIP العادية. يحتاج هذا الثابت إلى الوحدة zlib.
zipfile.ZIP_BZIP2
الثابت العددي لعملية الضغط بطريقة BZIP2. يحتاج هذا الثابت إلى الوحدة bz2.
ملاحظة: هذا الثابت جديد في الإصدار 3.3 من بايثون.
zipfile.ZIP_LZMA
الثابت العددي لعملية الضغط بطريقة LZMA. يحتاج هذا الثابت إلى الوحدة lzma.
ملاحظة: هذا الثابت جديد في الإصدار 3.3 من بايثون.
ملاحظة:
أضافت مواصفات ملفات ZIP الدعم لعملية الضغط بطريقة bzip2 سنة 2001، وبطريقة LZMA سنة 2006. ولكن يجب الانتباه إلى أنّ بعض الأدوات (ومن ضمنها إصدارات بايثون القديمة) لا تدعم طرق الضغط هذه، وقد يؤدي ذلك إلى رفض التعامل مع ملف ZIP بصورة كاملة، أو عدم التمكن من استخراج بعض الملفات من الأرشيف.
انظر أيضًا
- الوحدة
tarfile
في بايثون.
مصادر
صفحة Read and write tar archive files في توثيق بايثون الرسمي.