我正在尝试使用Drive API版本3(Python)访问Google云端硬盘。列出文件似乎工作正常。当我尝试上传文件时,我的权限错误不足。
我更改了我的范围以完全授予我的脚本
SCOPES = 'https://www.googleapis.com/auth/drive'
以下是我用来创建文件的块
file_metadata = {
'name': 'Contents.pdf',
'mimeType': 'application/vnd.google-apps.file'
}
media = MediaFileUpload('Contents.pdf',
mimetype='application/vnd.google-apps.file',
resumable=True)
file = service.files().create(body=file_metadata,
media_body=media,
fields='id').execute()
print ('File ID: %s' % file.get('id'))
我收到此错误消息:
ResumableUploadError:HttpError 403"权限不足"
我不确定这里有什么问题。
答案 0 :(得分:4)
我认为你的脚本运行正常。从您显示的错误中,我认为需要重新授权访问令牌和刷新令牌。所以请尝试以下流程。
授权使用client_secret.json
时,会创建凭据JSON文件。在默认的快速入门时,它是在您的主目录的.credentials
中创建的。
对于您当前的情况,请删除当前不是client_secret.json
的凭据JSON文件,并通过启动脚本重新授权。快速入门的默认文件名是drive-python-quickstart.json
。
由此,https://www.googleapis.com/auth/drive
的范围反映在访问令牌和刷新令牌上,并用于上传过程。即使此流程已完成,也会发生错误,请再次确认是否在API控制台上启用了Drive API。
如果这对你没用,我很抱歉。
答案 1 :(得分:0)
也许你已经有一个同名的文件了?