簡體   English   中英

使用 boto3 將文件上傳到特定文件夾中的 s3 存儲桶

[英]Using boto3 to upload files to s3 bucket within specific folder

我有下面的代碼將文件上傳到我的 s3 存儲桶。 但是,如果存在,我希望將 go 文件放入特定文件夾中。 如果該文件夾不存在,則應創建該文件夾,然后添加該文件。

這是我使用添加我的文件的行。

response = s3_client.upload_file(file_name, bucket, object_name)

我想要的文件夾名稱是:

<Year>/<Month>/<day>/<this is the file>

顯然,我們每天都需要創建新文件夾。 我怎么能用boto3做到這一點?

無需創建文件夾 只需將 object 上傳到特定路徑即可使文件夾自動“出現”。

因此,您的代碼只需要找出上傳 object 的正確完整路徑(密鑰)。 假設您希望它 go 到具有今天日期的文件夾,您需要在object_name中創建正確的路徑:

from datetime import datetime

target_key = datetime.now().strftime('%Y/%m/%d/') + object_name

response = s3_client.upload_file(file_name, bucket, target_key)

但是,請注意 AWS Lambda function 在 UTC 時區運行,因此您可能需要根據當地時區調整時間。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM