0
Python docsから、1つのファイル(フラスコプロジェクトの場合)を圧縮するためにフォローのスニペットを選択しました。Zipファイルのすべてのフォルダをzipで作成する
私はここテンプロックでzipファイルを作成する必要があります。 /home/workspace/project/temploc/zipfile.zip
そしてここでは、私のファイルはzip形式で圧縮される。 /home/workspace/project/temploc/file_to_be_zipped.csv
from zipfile import ZipFile
def zip_file(self, output, file_to_zip):
try:
with ZipFile(output, 'w') as myzip:
myzip.write(file_to_zip)
except:
return None
return output
このコードtemploc
でzipファイルを作成しますが、フルとをzipファイルパスのディレクトリ構造。
def prepare_zip(self):
cache_dir = app.config["CACHE_DIR"] #-- /home/workspace/project/temploc
zip_file_path = os.path.join(cache_dir, "zipfile.zip")
input_file = '/home/workspace/project/temploc/file_to_be_zipped.csv'
self.zip_file(zip_file_path, input_file)
しかし、コード上で与えられたパスのディレクトリ構造を持つzipファイル作成されます。
zipfile.zip
├──home
│ ├── workspace
│ │ └── project
│ │ └──temploc
│ │ └── file_to_be_zipped.csv
をしかし、私はこれだけの構造たい:私は「何届かない
zipfile.zip
└── file_to_be_zipped.csv
を私は行方不明です。
それは魅力のように働きました。答えを受け入れるのを忘れていた。 – Laxmikant