我是python的新手,并且已经与gspread合作了几个月并继续使用它然后第二天出现错误!
我有一个RFID模块将数据发送到谷歌表。有时谷歌API会接受这些数据,有时它却没有,我现在搜索了几天之后真的无法弄清楚解决方案(撕掉我的头发)。
我正在使用Raspberry Pi 3,python 2.7和gspread发送到谷歌驱动器API,其中信息记录在谷歌文档中。我已经将ntp服务器重置为本地服务器,所以时间是正确的,我甚至在白天设置了一个cron reboot,看它是否会刷新弹出的任何错误。我在pi的桌面上有.py文件和.json。
这是我的错误:“HttpAccessTokenRefreshError:invalid_grant:无效的JWT签名。”
代码如下。感谢您的任何帮助或建议:)
import serial
import re
import time
import gspread
import json
from oauth2client.service_account import ServiceAccountCredentials
pattern = r"(\d+\.\d*)_(\d+\.\d*)\r\n"enter code here
#port = '/dev/ttyACM1'
port2 = "/dev/ttyACM0"
scope = ['https://spreadsheets.google.com/feeds']
credentials = ServiceAccountCredentials.from_json_keyfile_name('My Project-xxxxxxxxxxxx.json', scope)
ser = serial.Serial(port2, 115200, timeout = 1)
if ser.isOpen():
print "connected"
while True:
line = ser.readline()
if len(line) > 2:
m = re.match(pattern, line)
tableline = [str(time.strftime("%d/%m/%Y")), str(time.strftime("%H:%M:%S")), line]# previously m.group(1), m.group(2)
gc = gspread.authorize(credentials)
wks = gc.open("example").sheet1
wks.append_row(tableline)
print (tableline)
time.sleep(30)
else:
time.sleep(1)
else:
print ("Failure opening serial port at " + port)