SPS*_*SPS 2 logging wget oauth-2.0 google-sheets-api
我是命令行中的新编程。我想下载一张 GoogleSheets 使用 wget 每天运行一个自动过程。我正在寻找如何使用OAuth2登录。
我尝试使用下一个命令,但不起作用。存档文件生成是一个html文件,用于登录gmail帐户并在登录后下载Google表格的表格。
wget -O 文件“ https://docs.google.com/spreadsheets/d/LONG_ID_STRING/export?gid=0&format=csv ” --user=user@gmail.com --password=password
我想使用 OAuth2 密钥。我使用库 googlesheets 对 R 程序进行了处理:
“图书馆(谷歌表)
gs_ls()
是 <- gs_title("文件")
gs_ws_ls(be) "
任何与命令行有关的想法。提前致谢!!!:)
如果您已经拥有 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 控制台或云平台控制台中创建您自己的项目,这将为您提供您自己的 OAuth2 客户端 ID 和客户端密钥。
接下来,从位于https://developers.google.com/oauthplayground/的 Google OAuth2 Developer Playground 中,您可以获得具有离线访问权限的访问令牌(更重要的是刷新令牌),范围为https://www .googleapis.com/auth/spreadsheets(也可能是https://www.googleapis.com/auth/drive),在“OAuth 2.0 配置”下使用您的客户端 ID 和客户端密钥(这是设置图标 - 中的小齿轮右上角),通过选中“使用您自己的 OAuth 凭据”。
添加客户端 ID 和客户端密钥后,您可以按照左侧的步骤操作,最终获得访问令牌和刷新令牌。
完成所有这些并获得刷新令牌后,您的脚本可以使用https://developers.google.com/identity/protocols/OAuth2WebServer#offline 上的 REST 说明定期获取新的访问令牌。
一定要保护好你的刷新令牌,祝你好运 - 正确处理是一件很棘手的事情,有很多活动部件!希望有人会发布更简单的步骤,但至少这可以让你前进。
| 归档时间: |
|
| 查看次数: |
2819 次 |
| 最近记录: |