私は現在、Pythonを使用してGoogleドライブからファイルメタデータをダウンロードする方法を考え出そうとしています。私は、Google が提供するドキュメントからほとんどコピー/貼り付けを行ってきましたが、今のところ問題ありません。電話しようとすると:
drive_file = drive_service.files().get(id=file_id).execute()
次のエラーが表示されます。
drive_file = drive_service.files().get(id=file_id).execute()
File "build\bdist.win-amd64\egg\apiclient\discovery.py", line 452, in method
TypeError: Got an unexpected keyword argument "id"
ただし、Google のドキュメントには、ここ([Python] タブの下) に、私が持っているものとほとんど同じことを示す例があります。Python の経験がないなどの理由で、コードが機能しませんか? 以下に完全なプログラムを表示します。
import httplib2
from apiclient.discovery import build
from oauth2client.client import OAuth2WebServerFlow
def getDriveService():
ClientID = <MY_CLIENT_ID>
ClientSecret = <MY_CLIENT_SECRET>
OAUTH_SCOPE = 'https://www.googleapis.com/auth/drive'
REDIRECT_URI = <MY_REDIRECT_URI>
flow = OAuth2WebServerFlow(ClientID, ClientSecret, OAUTH_SCOPE, REDIRECT_URI)
flow.redirect_uri = REDIRECT_URI
authorize_url = flow.step1_get_authorize_url()
print authorize_url
code = raw_input('Enter verification code: ').strip()
credentials = flow.step2_exchange(code)
http = httplib2.Http()
http = credentials.authorize(http)
return build('drive', 'v2', http=http)
drive_service = getDriveService()
files = drive_service.files().list().execute()
file_id = files['items'][0]['id']
#Error occurs here
drive_file = drive_service.files().get(id=file_id).execute()
print 'Title: %s' % drive_file['title']
print 'Description: %s' % drive_file['description']
print 'MIME type: %s' % drive_file['mimeType']