InstalledAppFlow自动获取授权码

时间:2019-01-14 02:34:41

标签: python google-authentication google-api-python-client

我正在使用从google_auth_oauthlib.flow导入的 InstalledAppFlow 。每次运行代码时,我都必须手动获取授权代码。该代码将显示如下:

Please visit this URL to authorize this application: https://accounts.google.com/o/oauth2/auth?response_type=code&client_id=929791903032-hpdm8djidqd8o5nqg2gk636efau34ea6q.apps.googleusercontent.com&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&scope=https%3A%22F%2Fwww.googleapis.com%2Fauth%2Fyt-analytics-monetary.readonly&state=a0drph4tJFDc2rIGtdwUStIGbRKNnkv18&prompt=consent&access_type=offline

Enter the authorization code: 然后,我必须单击上面的accounts.google.com输入授权代码,然后将其粘贴: 4/0gCyNaDZeNRr5pnvkXFO1HvLjsq5IbjVYjETaUtlq8_1PqoaY9totzs

我的问题是如何自动而不是手动执行此步骤?

1 个答案:

答案 0 :(得分:0)

像tehhowch所说,他们的文档可以自动执行此过程:

flow.run_local_server()

而不是:

flow.run_console()

然后在下次运行时使其自动化:

flow.run_local_server()
with open('token.pickle', 'wb') as token:
        pickle.dump(credentials, token)

它应该在第一次运行后无提示运行。

https://developers.google.com/apps-script/api/quickstart/python