Google drive api 在不创建WebApp的情况下访问Google Drive API?

Google drive api 在不创建WebApp的情况下访问Google Drive API?,google-drive-api,Google Drive Api,首先,如果我是一个傻瓜,并且遗漏了一些明显的东西,我向你道歉,但是我花了几个小时在文档中搜索,结果迷失了方向 我正在尝试编写一个python脚本,将一组图像上传到单个用户的Google驱动器。用户已经存在,并且永远不会更改。我不是在写网络应用,也不打算使用任何用户界面。一切都将通过代码完成 据我从谷歌文档中了解,我有两个选择: 1) 编写web应用程序并注册以使用驱动器DSK。这当然需要为web应用程序提供URL等 2) 创建一个服务帐户,将我的“应用程序”绑定到新的服务帐户电子邮件 这两种选择

首先,如果我是一个傻瓜,并且遗漏了一些明显的东西,我向你道歉,但是我花了几个小时在文档中搜索,结果迷失了方向

我正在尝试编写一个python脚本,将一组图像上传到单个用户的Google驱动器。用户已经存在,并且永远不会更改。我不是在写网络应用,也不打算使用任何用户界面。一切都将通过代码完成

据我从谷歌文档中了解,我有两个选择:

1) 编写web应用程序并注册以使用驱动器DSK。这当然需要为web应用程序提供URL等

2) 创建一个服务帐户,将我的“应用程序”绑定到新的服务帐户电子邮件


这两种选择都不适合我。有没有办法简单地登录到一个用户帐户并通过python脚本访问他们的驱动器?

有一个不推荐使用的API,它可以让您使用用户名和密码登录以访问驱动器数据

但是基本的想法是,你应该使用更安全的东西——从你的用户的角度来看——允许他们在不给你密码的情况下授权你


对于您的用例,用户可能是您或您认识的人,并且您正在通过更私人的授权访问他们的帐户。在这种情况下,ClientLogin可能是您的最佳选择。如果这是一个供任意用户使用的应用程序,那么不推荐ClientLogin是有充分理由的,我建议您咬紧牙关,选择一个受支持的选项。

正确的解决方案是将授权阶段与访问阶段分开。授权过程只需要运行一次,并且可以从一个简单的网站上完成。其结果是一个刷新令牌,类似于用户名/密码。您需要意识到安全问题。确保只授予drive.file作用域,以最大限度地减少安全漏洞的影响


由于您正在上载图像,您可能还需要查看picassa api

为什么你提供的选项不是“为你工作?”因为我不是在写一个web应用程序,它只是一个脚本。我需要访问一个已经存在的用户帐户,而不是像使用服务帐户一样绑定到新帐户。该用户已授予我访问其驱动器的明确授权。脚本本身永远不会有任何“用户”。它将每月运行一次,以编程方式生成一些文件,然后将它们上载到此用户的帐户,以便他们可以查看它们。我的用例很奇怪吗?我觉得奇怪的是,通过programatic登录访问api是一个完全不受支持的用例。对于这个用例,您仍然希望用户通过web浏览器授权您的脚本。在阅读了关于ClientLogin的内容后,看起来甚至需要创建一个UI元素来捕获用户的登录信息,包括CAPTCHA。根据我的经验,CAPTCHA要求从未被使用过。