首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过在云中运行的笔记本电脑从google drive访问电子表格文件

通过在云中运行的笔记本电脑从google drive访问电子表格文件
EN

Stack Overflow用户
提问于 2019-11-21 04:30:21
回答 1查看 113关注 0票数 0

我正在和一些朋友一起做一个业余项目。我想做的是在Google Drive (或类似的服务)上保存一个电子表格,我和我的朋友将定期更新。我们希望使用Python和Jupyter Notebook可视化电子表格中的数据。我的朋友对编程完全不感兴趣,所以我希望他们能够在云中访问和运行笔记本,例如通过mybinder.org。

我从Google API中做了一些凭据的东西,当我在本地运行时,它工作得很好。然而,问题是,由于我的理解是我不应该将凭据上传到GitHub,mybinder.org无法获得从Google Drive读取电子表格所需的凭据。所以我的问题是我该如何解决这个问题?

一个想法是创建一个单独的Google帐户,只用于将电子表格放在那里。如果我这样做了,那么也许将凭据上传到GitHub就可以了?电子表格中的数据一点也不敏感。

EN

回答 1

Stack Overflow用户

发布于 2019-12-13 04:26:35

你可以通过选择“Sharing”下的Get shareable link将文件设置为与那些有链接的人共享,然后使用here描述的方法将文件带入活动的Jupyter会话中。(有关使用curl来实现此目的的更多信息,请访问here。)

要将其视为CSV,您可以基于here将可共享链接的URL结尾从edit?usp=sharing更改为export?exportFormat=csv

要在Jupyter notebook单元格中执行curl,您需要在命令前面加上一个感叹号,以便在shell中运行任务。

然后将stdout定向到一个文件。

因此结合起来,代码单元的一般形式将是:

代码语言:javascript
复制
!curl https://docs.google.com/spreadsheets/d/<specific_GUID_key>/export?exportFormat=csv > output.csv

可以将不带感叹号的命令放在start文件中,这样每次启动会话时都会检索当前数据,而不是运行代码从notebook单元格中检索它。有关用于Binderhubs/MyBinder.org的start配置文件的更多信息,请参见here

您可能还有兴趣使用Voila让他们通过Jupyter笔记本支持的仪表板查看可视化。它也可以由MyBinder.org支持的会话产生。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58962872

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档