2016-07-17 50 views

回答

1

的驅動器API允許你upload某些類型的二進制數據或媒體。你可以上傳數據的具體特性的參考頁面上指定支持媒體上傳任何方法:

  • 最大上傳文件大小:你可以用這種方法存儲的最大數據量。
  • 接受的媒體MIME類型:您可以使用此方法存儲的二進制數據的類型。

您可以通過以下任何方式進行上傳請求。使用uploadType請求參數指定您正在使用的方法 - Simple Upload,Multipart uploadResumable upload

在Google雲端硬盤中創建文件時,您可以通過指定文件的mimeType屬性將某些類型的文件轉換爲Google文檔,表格或幻燈片文檔。下面的示例演示如何上傳CSV文件作爲一個電子表格:

file_metadata = { 
    'name' : 'My Report', 
    'mimeType' : 'application/vnd.google-apps.spreadsheet' 
} 
media = MediaFileUpload('files/report.csv', 
         mimetype='text/csv', 
         resumable=True) 
file = drive_service.files().create(body=file_metadata, 
            media_body=media, 
            fields='id').execute() 
print 'File ID: %s' % file.get('id') 

對於downloading文件,該API允許您下載存儲在谷歌雲端硬盤文件。此外,您可以下載Google文檔(文檔,電子表格,演示文稿等)的導出版本,格式爲您的應用可以處理的格式。 Drive還支持通過webViewLink屬性中的URL直接訪問文件。

要下載文件,請向文件的resource URL發出授權的HTTP GET請求,幷包含查詢參數alt=media。例如:

GET https://www.googleapis.com/drive/v3/files/0B9jNhSvVjoIVM3dKcGRKRmVIOVU?alt=media 
Authorization: Bearer ya29.AHESVbXTUv5mHMo3RYfmS1YJonjzzdTOFZwvyOAUVhrs 

以下是使用我們的Drive API客戶端庫執行文件下載的示例。

file_id = '0BwwA4oUTeiV1UVNwOHItT0xfa2M' 
request = drive_service.files().get_media(fileId=file_id) 
fh = io.BytesIO() 
downloader = MediaIoBaseDownload(fh, request) 
done = False 
while done is False: 
    status, done = downloader.next_chunk() 
    print "Download %d%%." % int(status.progress() * 100) 

這裏是一個Python Quickstart - 簡單的Python命令行應用程序,使得請求到驅動器API。

相關問題