2011-08-01 5 views
0

私はpythonで書かれたプログラムを使って、アーカイブ(zipファイル)をリモートサーバにアップロードしています。しかし、それをアップロードする前に、私はそれが壊れていないことをテストする必要があるので、私はunzip -tのようなものを実行し、失敗した場合はエラーをスローします。アーカイブデータをテストする(Pythonに対応する) - Python

私はシステムコールunzip -tを実行すると、(Googleで何も見つかりませんでした)それを行うことができますか、私のプログラムからエラーをキャッチする方法はありますか?

おかげ

答えて

4

Zipfile.testzipはあなたの友達です。

アーカイブ内のすべてのファイルを読み取り、CRCおよびファイルヘッダーを確認します。最初の不良ファイルの名前を返し、そうでない場合はNoneを返します。

+0

ありがとうございました。 – talnicolas

2

使用ZipFile.testzip

import zipfile 
def zip_isOk(fn): 
    with zipfile.ZipFile(fn, 'r') as zipf: 
     return zipf.testzip() is None 
関連する問題