问题描述
我有几个使用 pygsheets
访问 Google 表格数据的 Python 脚本的问题。在某些情况下,从 Google Sheets API 返回的数据不正确 - 工作表中缺少整行,或者检索到的值是工作表的早期版本。
假设我有一张具有以下值的工作表。
| ID | Value |
|----|-------|
| 1 | Foo |
| 2 | Bar |
| 3 | Baz |
如果我运行以下示例代码:
import pygsheets
client = pygsheets.autohrize()
worksheet = sheets_client.open_by_key({spreadsheetId}).worksheet_by_title("Main")
records = worksheet.get_all_records()
ids = [1,2,3]
for id in ids:
records[id]
我收到此回溯:
Traceback (most recent call last):
File "/home/user/sheet_test.py",line 10
records[id]
KeyError: '2'
现在,查看实时工作表,我知道存在 ID 为“2”的行。奇怪的是,如果我重新运行脚本,一切都会按预期进行。
查看 pygsheets
的源代码,我没有看到任何缓存机制,所以我怀疑是使用 Sheets API 返回某种奇怪的缓存值。
有没有人从 Google 工作表返回的数据没有反映该工作表的 GUI 视图?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)