باستخدام Python ، والحصول على اسم الملفات في أرشيف zip

StackOverflow https://stackoverflow.com/questions/3678842

  •  01-10-2019
  •  | 
  •  

سؤال

لدي العديد من ملفات zip كبيرة جدًا للتنزيل على موقع ويب. أنا أستخدم Flask microframework (استنادًا إلى Werkzeug) الذي يستخدم Python.

هل هناك طريقة لإظهار محتويات ملف zip (أي ملف وأسماء المجلدات) - لشخص على صفحة ويب - دون تنزيله فعليًا؟ كما هو الحال في القيام بجانب الخادم العمل.

افترض أنني لا أعرف ما هو في أرشيف الرمز البريدي بنفسي.

أقوم بتثبيط أن هذا المنشور لا يتضمن رمزًا.

شكرا لك على المساعدة.

هل كانت مفيدة؟

المحلول

بالتأكيد ، ألق نظرة على zipfile.ZipFile.namelist(). الاستخدام بسيط للغاية ، كما تتوقع: يمكنك فقط إنشاء ملف ZipFile كائن للملف الذي تريده ، ثم namelist() يمنحك قائمة بمسارات الملفات المخزنة في الأرشيف.

with ZipFile('foo.zip', 'r') as f:
    names = f.namelist()
print names
# ['file1', 'folder1/file2', ...]

نصائح أخرى

http://docs.python.org/library/zipfile.html

على وجه التحديد ، حاول استخدام طريقة zipfile.namelist ().

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top