アンパックされたアーカイブの結果サイズをアンパックせずに検証して、巨大なアーカイブが私のサーバに保存されないようにする必要があります。 開梱を開始し、サイズが一定のサイズを超えた場合は、開梱を停止してください。 私はすでにlib pyunpack
を試しましたが、アンパック用のアーカイブのみが許可されています。 このようなアーカイブ拡張子を検証する必要があります: rar
,zip
、7z
、tar
多分、私はいくつかのLinux機能を使って、os.system
でそれらを呼び出すことでそれを行うことができます。解凍したアーカイブの解凍を行わずに結果のサイズを調べる。特定のサイズを超えたときにアンパックを停止する
0
A
答えて
0
ネイティブのpythonの回答は得られませんが、os.system
に戻る必要がある場合、4つのフォーマットすべてを処理するコマンドラインユーティリティにはスイッチがあり、これを使用してアーカイブの内容を一覧表示できます各ファイルのサイズと、おそらく全体のサイズ:
rar
:各ファイルや合計サイズの情報が表示されますunrar l FILENAME.rar
。zip
:unzip -l FILENAME.zip
は、各ファイルのサイズ、タイムスタンプ、および名前を合計サイズと共にリストします。7z
:7z l FILENAME.7z
には、各ファイルの詳細と合計サイズが記載されています。tar
:tar -tvf FILENAME.tar
またはtar -tvzf FILENAME.tgz
(または.tar.gz
)には、ファイルサイズを含む各ファイルの詳細が記載されています。合計サイズは提供されませんので、あなた自身で追加する必要があります。
ネイティブのPythonライブラリを見ている場合は、「リスト」または「テスト」機能があるかどうかを確認することもできます。それらは、コマンドラインツールが上記のスイッチを説明するために使用する用語です。したがって、同じ名前がライブラリ作成者によって使用されている可能性があります。
関連する問題
- 1. アーカイブの解凍を行わずにjavaのアーカイブから.tsvファイルを取得
- 2. zlib異なる解凍サイズ
- 3. アンパックせずにbzip2アーカイブ内のファイルのサイズを調べる方法は?
- 4. Apple Walletのアップデートパス - アーカイブを解凍できませんでした
- 5. Windows 8でアーカイブを解凍する
- 6. Powershellで解凍(解凍)せずに* .zipファイル内のファイルを置換する
- 7. 私は(解凍)javascripteでzipファイルのバイナリデータを解凍したい
- 8. LastWriteTimeを解凍したファイルの元のタイムスタンプに設定する
- 9. 瓶を解凍して解凍すると、同じサイズではありません!
- 10. LZ4不明なサイズのバイナリメモリブロックを解凍する
- 11. 解凍されたフォルダの解凍された内容を列挙します
- 12. メモリ内にzipアーカイブをダウンロードして解凍する
- 13. Javaで大きなサイズのデータを圧縮および解凍するには?
- 14. ZIPバイト[]を解凍してバイトを解凍する
- 15. CX-凍結は、私はCX-凍結を実行したときに、具体的
- 16. 7zip自己解凍アーカイブ(SFX)と.Netインストーラ
- 17. 解凍ファイルを7-zipで解凍し、解凍完了後に別のフォルダに移動します。
- 18. Zlib解凍機能は解凍の代わりにコピーします
- 19. Pythonファイルを解凍して結果を連結
- 20. Silverlightでフォルダとそのサブフォルダを解凍して解凍する方法は?
- 21. 解凍中にアーカイブ名を取得する方法
- 22. Linuxボックスに自己解凍型zipアーカイブを作成する
- 23. .NETでgzipアーカイブを解凍する際の問題
- 24. UnzipがアーカイブからUnicodeファイルの解凍に失敗する
- 25. ラズベリーパイのopencvを解凍するには?
- 26. Node.jsでPHPアーカイブを作成して解凍する
- 27. 特定のbzip2ブロックのみを解凍する
- 28. Webアプリケーションのデプロイメントプロセスの一部としてアーカイブをコピーして解凍する
- 29. Androidのアーカイブを解凍すると、内蔵ストレージに保存されます。
- 30. Emacs内で解凍/解凍するには