2014-09-01 28 views
5

i bir zip dosyası ayıklamak gerekir python-senaryo yazmaya çalışıyorum:zip modülünün şifre korumalı fermuarlar ayıklar yavaşça

Kurulu: wheezy Beagle-Bone siyah ~ 1GHz Arm-Cortex-a8, debian Zipfile: /home/milo/my.zip, ~ 8 MB

>>> from zipfile import ZipFile 
>>> zip = ZipFile("/home/milo/my.zip") 
>>> zip.extractall(pwd="tst") 

açma ve okuma ile diğer çözümler -> zip dosyası yazarken ve hatta belirli bir dosyada ayıklamak da aynı etkiye sahiptir. ayıklamak yaklaşık 3-4 dakika sürer.

Sadece unzip-tool ile aynı dosyayı ayıklamak 2 saniyeden daha az sürüyor.

Kodumla ne kadar kazandığını veya python zipfile lib ??

Teşekkür ajava

+0

Zip şifresi korumalı olsun veya olmasın ayıklama hızını etkiler mi? –

+0

Hayır, aynı zipfile şifre korumalı değilse, aynı kod unzip yapmak gibi hızlı her şeyi ayıklar !!!!! –

+1

Hatta kendi bilgisayarımda (i5, 8GB RAM, Debian Wheezy) Python ile 30 MB şifre korumalı bir zip dosyası ayıklamak 1 dakikadan fazla sürmez! –

cevap

4

Bu Python 2.7 ZipFile modülü ile belgelenmiş bir sorun gibi görünüyor. Eğer documentation for ZipFile bakarsak, açıkça bahseder: Eğer hızlı performans gerekiyorsa o yerli Python yerine C

uygulanma biçimiyle

Şifre çözme derece yavaş, bir çağırmak ya Kodunuzdan harici bir program (unzip veya 7zip gibi) veya çalıştığınız zip dosyalarının parola korumalı olmadığından emin olun.

+0

Dokümanı okudum ama bu satırı gözden kaçırdım! Teşekkürler –