wget使用oauth2 for googlesheets

时间:2018-02-22 15:26:16

标签: logging oauth-2.0 wget google-sheets-api

我是命令行中的新编程。我想用wget下载一张GoogleSheets,每天运行一个自动进程。我正在寻找如何使用 OAuth2 进行登录。

我尝试下一个命令,但不起作用。存档文件 generate是一个html文件,用于登录gmail帐户,并在登录后下载Google表格。

wget -O file“https://docs.google.com/spreadsheets/d/LONG_ID_STRING/export?gid=0&format=csv”--user=user@gmail.com --password = password

我想使用OAuth2密钥。我使用库googlesheets做了R程序:

库(googlesheets)

gs_ls()

be< - gs_title(“FILE”)

gs_ws_ls(是)

任何想法都与命令行有关。提前致谢!!! :)

1 个答案:

答案 0 :(得分:2)

如果您已经拥有OAuth2访问令牌,则可以在"授权"头:

wget --header "Authorization: Bearer <your access token>" -O file "https://docs.google.com/spreadsheets/d/LONG_ID_STRING/export?gid=0&format=csv"

不幸的是,这是一个简单的部分。在命令行中 获取 OAuth2访问令牌更具挑战性。

您应首先在API控制台或Cloud Platform控制台中创建自己的项目,这将为您提供自己的OAuth2客户端ID和客户端密钥。

接下来,在https://developers.google.com/oauthplayground/的Google OAuth2开发者游乐场中,您可以获得具有离线访问权限的访问令牌(更重要的是,刷新令牌),范围为https://www.googleapis.com/auth/spreadsheets(可能{ {3}}),在&#34; OAuth 2.0配置下使用您的客户端ID和客户端密钥&#34; (它是“设置”图标 - 右上方的小装备),通过选中&#34;使用您自己的OAuth凭据&#34;。

在您添加了客户端ID和客户端密钥后,您可以完成左侧的步骤,最终获得访问令牌和刷新令牌。

完成所有这些操作并拥有该刷新令牌后,您的脚本可以使用https://www.googleapis.com/auth/drive上的REST说明定期获取新的访问令牌。

请务必保护您的刷新令牌,祝您好运 - 这是一件非常棘手的事情,要想做好准备!希望有人会发布更简单的步骤,但至少这可以让你前进。

  • 蒂姆