使用 Python 上傳檔案
匯入所需的庫:
from gcloud import storage
定義所需的變數:
客戶端 :繫結 API 請求所需的配置
client = storage.Client()
Client()
的可選引數:
- 專案 :客戶代表的專案。將在建立主題時傳遞。如果未通過,則回退到從環境推斷的預設值。
- 憑據 :用於連線的 OAuth2 憑據。如果未通過,則回退到從環境推斷的預設值。
- http :發出請求的 HTTP 物件。如果未傳遞,則會建立一個
http
物件,該物件繫結到當前物件的憑據。
Bucket :通過 Google Cloud Console 選擇在專案中建立的儲存桶
bucket = client.get_bucket('<your-bucket-name>')
有關 Client
功能的更多詳細資訊,請參閱 Storage Client
Blob :將儲存的檔名。
blob = bucket.blob('my-test-file.txt')
你還可以定義這樣的目錄:
filename = "%s/%s" % (folder, filename)
blob = bucket.blob(filename)
有幾種方法可以上傳檔案。你可以期待 POST
或 PUT
請求的有效負載中的檔案,或者在檔案系統上本地使用它。你甚至可以將文字直接傳送到文字檔案。
# Uploading string of text
blob.upload_from_string('this is test content!')
# Uploading from a local file using open()
with open('photo.jpg', 'rb') as photo:
blob.upload_from_file(photo)
# Uploading from local file without open()
blob.upload_from_filename('photo.jpg')
有關上載功能的更多詳細資訊,請參閱 Blob / Objects
如果你需要公開 blob,可以將檔案的隱私設定為 public:
blob.make_public()
url = blob.public_url