باستخدام Python ، والحصول على اسم الملفات في أرشيف zip
سؤال
لدي العديد من ملفات 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 ().
لا تنتمي إلى StackOverflow