![](/img/trans.png)
[英]How to obtain a file object from a variable or from http URL without actually creating a file?
[英]Python Django : Creating file object in memory without actually creating a file
我有一個端點,我想在其中收集響應數據並將其轉儲到S3上的文件中,如下所示-https://stackoverflow.com/a/18731115/4824482
這就是我試圖做到的方式-
file_obj = open('/some/path/log.csv', 'w+')
file_obj.write(request.POST['data'])
然后按照上述鏈接將file_obj
傳遞到S3相關代碼。
問題是我沒有在服務器上創建文件的權限。 有什么辦法可以在內存中創建文件對象,然后將其傳遞給S3代碼?
可能是重復的問題,即如何在不創建臨時本地文件的情況下將文件上傳到S3 。 您可以通過查看該問題的答案找到最佳建議。
很快答案是下面的代碼:
from boto.s3.key import Key
k = Key(bucket)
k.key = 'yourkey'
k.set_contents_from_string(request.POST['data'])
嘗試tempfile https://docs.python.org/2/library/tempfile.html
f = tempfile.TemporaryFile()
f.write(request.POST['data'])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.