【发布时间】:2020-04-08 03:01:02
【问题描述】:
我按照here 和here 的步骤操作,但无法将熊猫数据框上传到谷歌表格。
首先我尝试了以下代码:
import gspread
from google.oauth2.service_account import Credentials
scope = ['https://spreadsheets.google.com/feeds',
'https://www.googleapis.com/auth/drive']
credentials = Credentials.from_service_account_file('my_json_file_name.json', scopes=scope)
gc = gspread.authorize(credentials)
spreadsheet_key = '1FNMkcPz3aLCaWIbrC51lgJyuDFhe2KEixTX1lsdUjOY'
wks_name = 'Sheet1'
d2g.upload(df_qrt, spreadsheet_key, wks_name, credentials=credentials, row_names=True)
上面的代码返回如下错误消息:AttributeError: module 'df2gspread' has no attribute 'upload' 这没有意义,因为 df2spread 确实有一个名为 upload 的函数。
其次,我尝试通过输入列名将我的数据附加到我在谷歌工作表上人为创建的数据框中。这也不起作用,也没有提供任何结果。
import gspread_dataframe as gd
ws = gc.open("name_of_file").worksheet("Sheet1")
existing = gd.get_as_dataframe(ws)
updated = existing.append(df_qrt)
gd.set_with_dataframe(ws, updated)
任何帮助将不胜感激,谢谢!
【问题讨论】:
-
您没有包含
df2gspread的导入声明,但您是否说import df2gspread as d2g而不是from df2gspread import df2gspread as d2g?这可以解释AttributeError。
标签: python pandas google-sheets google-sheets-api gspread