0
我想使用Python来访问谷歌的API,从谷歌驱动下载电子表格,我借用谷歌API示例代码,并做了一些改变它。但是,每次运行时,我总是有这个httpError返回,说我有“权限不足”。我在下面附上我的代码,我想知道是否有人可以看看它,并让我知道哪个部分是错的。谢谢PYTHON下载谷歌云端硬盘电子表格
import httplib2
import os
from apiclient.http import MediaIoBaseDownload
from apiclient import discovery
import oauth2client
from oauth2client import client
from oauth2client import tools
import io
try:
import argparse
flags = argparse.ArgumentParser(parents=[tools.argparser]).parse_args()
except ImportError:
flags = None
SCOPES = 'https://www.googleapis.com/auth/drive'
CLIENT_SECRET_FILE = 'client_secret.json'
APPLICATION_NAME = 'Drive API Python Quickstart'
def get_credentials():
home_dir = os.path.expanduser('~')
credential_dir = os.path.join(home_dir, '.credentials')
if not os.path.exists(credential_dir):
os.makedirs(credential_dir)
credential_path = os.path.join(credential_dir,
'drive-python-quickstart.json')
store = oauth2client.file.Storage(credential_path)
credentials = store.get()
if not credentials or credentials.invalid:
flow = client.flow_from_clientsecrets(CLIENT_SECRET_FILE, SCOPES)
flow.user_agent = APPLICATION_NAME
if flags:
credentials = tools.run_flow(flow, store, flags)
else: # Needed only for compatibility with Python 2.6
credentials = tools.run(flow, store)
print('Storing credentials to ' + credential_path)
return credentials
def main():
credentials = get_credentials()
http = credentials.authorize(httplib2.Http())
service = discovery.build('drive', 'v3', http=http)
file_id = '1tRL7q2AYdQuuaWQyfT700H3WG6Klod9EtjF2yTMoGiE'
request = service.files().export_media(fileId=file_id,
mimeType='text/csv')
fh = io.FileIO('LISAtrial.csv')
downloader = MediaIoBaseDownload(fh, request)
done = False
while done is False:
status, done = downloader.next_chunk()
if __name__ == '__main__':
main()