我正在编写一个脚本,该脚本从google表单检查google表格,并以民意调查的实时显示形式返回结果。我需要弄清楚如何更新值计数,但仅当Google工作表更新时才可以,而不是每60秒(或每秒钟)检查一次。
这是我当前的设置:
string = ""
while True:
responses = gc.open("QOTD Responses").sheet1
data = pd.DataFrame(responses.get_all_records())
vals = data['Response'].value_counts()
str = "{} currently has {} votes. \n{} currently has {} votes.".format(vals.index[0], vals[0], vals.index[1],
vals[1])
if(str != string):
string = str
print(string)
time.sleep(60) # Updates 1440 times per day
我几乎可以肯定,必须有一种更好的方法来做到这一点,那会是什么?
谢谢!
答案 0 :(得分:0)
仅靠Python您将无法做到这一点。您需要与trigger function from Google Apps script集成。
您可以使用onEdit触发函数将信号发送到python脚本(例如,通过http调用)。
要使用简单的触发器,只需创建一个使用以下功能之一的函数 这些保留的函数名称:
onOpen(e)在用户打开电子表格,文档, 演示文稿或用户有权编辑的表单。
onEdit(e)在用户更改电子表格中的值时运行。