簡體   English   中英

通過在雲中運行的筆記本從谷歌驅動器訪問電子表格文件

[英]Accessing spreadsheet file from google drive through notebook run in the cloud

我正在和一些朋友一起做一個業余項目。 我想做的是在 Google Drive(或類似服務)上保存一個電子表格,我和我的朋友會定期更新。 我們想要使用 Python 和 Jupyter Notebooks 可視化的電子表格中的數據。 我的朋友根本不喜歡編程,所以我希望他們能夠訪問和運行雲中的筆記本,例如通過 mybinder.org。

我從谷歌 API 做了憑據,當我在本地運行時它工作正常。 然而,問題在於,由於我的理解是我不應該將憑據上傳到 GitHub,因此 mybinder.org 無法獲得從 Google Drive 讀取電子表格所需的憑據。 所以我的問題是我該如何解決這個問題?

一個想法是創建一個單獨的 Google 帳戶,僅用於將電子表格放在那里。 如果我這樣做,那么也許將憑據上傳到 GitHub 可以嗎? 電子表格中的數據根本不敏感。

您可以通過選擇“共享”下的“ Get shareable link ”將文件設置為與具有鏈接的人共享,然后使用此處描述的方法將文件放入活動的 Jupyter session。 (更多關於使用curl來做到這一點在這里。)
要將其作為 CSV 獲取,您可以根據此處將可共享鏈接的 URL 的末尾從edit?usp=sharing更改為export?exportFormat=csv
要在 Jupyter 筆記本單元格中執行curl ,您需要在命令前加上感嘆號,以便任務在 shell 中運行。
然后將標准輸出定向到文件。
因此,將其結合起來,代碼單元的一般形式將是:

!curl https://docs.google.com/spreadsheets/d/<specific_GUID_key>/export?exportFormat=csv > output.csv

無需運行代碼從筆記本單元格中檢索它,而是可以將不帶感嘆號的命令放在start文件中,以便每次啟動 session 時檢索當前數據。 有關與 Binderhubs/MyBinder.org 一起使用的start配置文件的更多信息,請參見此處

您可能還對使用Voila讓他們通過由 Jupyter 筆記本支持的儀表板查看可視化感興趣。 它也可以由 MyBinder.org 支持的會話生成。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM