1

我们可以使用以下命令列出谷歌驱动器中存在的电子表格

 from google.colab import drive
 drive.mount('/content/drive')
 !ls -l /content/drive/'Shared drives'

但无法使用以下命令读取电子表格

import gspread
from oauth2client.client import GoogleCredentials

gc = gspread.authorize(GoogleCredentials.get_application_default())

gc.open('/content/drive/'Shared drives/data.gsheet').data available

还有一个问题,我们在工作表名中有空间(数据可用),我们无权更改工作表名

我有参考链接:: https://colab.research.google.com/notebooks/io.ipynb
请帮忙。

4

2 回答 2

3

您可以使用gc.open_by_url('gsheets_url')打开文件(无需安装驱动器)。对于工作表名称,您可以使用gsheets.worksheet('sheet name').

所以在你的情况下,它会是这样的:

from google.colab import auth
auth.authenticate_user()
import gspread
from oauth2client.client import GoogleCredentials

# setup
gc = gspread.authorize(GoogleCredentials.get_application_default())

# read data and put it in a dataframe
gsheets = gc.open_by_url('your-link')
sheets = gsheets.worksheet('data available').get_all_values()
df = pd.DataFrame(sheets[1:], columns=sheets[0])

(这篇文章的学分)

于 2021-02-03T21:11:52.657 回答
0

如果您能说出运行此脚本时遇到的确切错误,这将很有帮助。但是,我注意到以下脚本中有多余的引号,

gc.open('/content/drive/'共享驱动器/data.gsheet')

通过以下替换上面的额外内容,

gc.open('/content/drive/共享驱动器/data.gsheet')

另一种选择是尝试 gc.open_by_url() 而不是 gc.open()

于 2020-04-14T11:24:42.367 回答