google drive apiを使ってローカルのファイルをドライブ上の指定したフォルダーにアップロードしたいです。
コード実行後にファイルidは生成されているようなのですが、ドライブに見にいくとファイルが見当たらないです。
認証にはGCPで生成したサービスアカウントを使用しています。
IAM権限のdriveに適用するように振っています。
google drive apiに関して知識も浅いので何かアドバイスなどがあれば教えて頂きたいです。
ファイル保管先のフォルダーはフォルダーIDでしてする認識であっていますでしょうか??
確かgoogle drive apiではディレクトリではなくidで管理している認識です。
よろしくお願いします。
from google.oauth2 import service_account from googleapiclient.discovery import build from apiclient.http import MediaFileUpload file_name = '/Users/myname/Downloads/test.csv' ←転送したいファイル folder_id1 = '1O9_l8HchW5uSnBc3JTbK1xxxxxxxx' ←保存先のフォルダーid folder_id2 = '1sCiU5HEW3t5QVHYusdLdxxxxxxxxx' SCOPES = ['https://www.googleapis.com/auth/drive'] credentials = service_account.Credentials.from_service_account_file('/Users/myname/Downloads/secret_key/credential.json') service = build('drive', 'v3', credentials=credentials) file_metadata = { 'name': 'test.csv', 'parents': [{ 'id': folder_id1, 'kind': 'drive#fileLink' }], } media = MediaFileUpload(file_name,mimetype='text/csv',resumable=True) file = service.files().create(body=file_metadata, media_body=media, fields='id').execute() print ('File ID: ' + file.get('id'))←File IDはきちんと生成されている
あなたの回答
tips
プレビュー