python - 让 gspread 使用相同的数据更新多个电子表格文件

标签 python google-sheets-api gspread

如上所述,我尝试使用工作表 ID 作为标识符来更新具有相同信息的多个工作表文件。我尝试用 for 循环来实现这一点,但没有成功。我试图实现此目的的一些基本代码是:

conn = gspread.authorize(credentials)
sheets = ['sheetid1', 'sheetid2']
worksheet_list = conn.open_by_key(sheets).worksheet("Rack Layout")
worksheet_list.update_acell('Q1', 'some cell value')

因此,如果我将“sheets”定义为一张sheetid,则更新工作正常,但是如果我将“sheets”定义为多个sheet,则会出现错误。我知道这确实很基本,我认为问题在于它试图在同一行上打开完整列表(即两个sheetid),而不是说“为一个sheetID运行此行,然后为下一个sheetID运行”。我认为实现这一点的方法是 for 循环,但我还没有让它与 for 循环一起使用。我知道这是一个核心问题,但我已经尝试了一段时间了,从我的搜索中,我没有找到任何其他关于让 gspread 执行此操作的论坛帖子。

最佳答案

  • 您有 2 个 Google 电子表格。
    • 2 个 Google 电子表格分别具有“Rack Layout”工作表。
  • 您想要将“某些单元格值”的值放入每个电子表格的“机架布局”工作表中的单元格“Q1”中。
  • 您希望使用 gspread 和 python 来实现此目的。
  • 您已经能够使用 Sheets API 获取和输入电子表格的值。

如果我的理解是正确的,这个答案怎么样?请将此视为几个可能答案之一。

在此修改后的脚本中,使用 for 循环将值放入每个电子表格中。

修改后的脚本:

conn = gspread.authorize(credentials)
sheets = ['sheetid1', 'sheetid2']
for sheet in sheets:  # Added
    worksheet_list = conn.open_by_key(sheet).worksheet("Rack Layout")
    worksheet_list.update_acell('Q1', 'some cell value')

如果我误解了您的问题并且这不是您想要的方向,我深表歉意。

关于python - 让 gspread 使用相同的数据更新多个电子表格文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59289468/

相关文章:

Python:回文(字符串索引超出范围)

python - Django 应用程序中的线程

javascript - 无法以 TSV 文件形式访问 Google 表格

javascript - 设置新单元格值时保留格式(Google 电子表格)

python - 如何使用 gspread 获取 Google 电子表格单元格链接

python - 从一个 Google 表格复制并粘贴到另一个

python - 导入 mechanize 时在 python3 中出现错误

python - 如何解决python中的mysqlclient安装错误

javascript - 无缘无故地获得不正确的范围高度?