У меня есть скрипт на Python (и он работает), который работает весь день для поиска среди моих электронных писем с использованием Gmail API, как это
def login():
SCOPES = ['https://www.googleapis.com/auth/gmail.readonly']
store = file.Storage(os.path.join(script_path, 'token.json'))
creds = store.get()
if not creds or creds.invalid:
flow = client.flow_from_clientsecrets(os.path.join(script_path, 'credentials.json'), SCOPES)
creds = tools.run_flow(flow, store)
service = build('gmail', 'v1', credentials=creds)
return service
def search(service):
.
.
.
return data
Но я не хочу вызывать login () больше, чем нужно, поэтому мой вопрос будет ...
Как часто мне нужно войти (), чтобы обновить переменную 'service'?
Внутри 'token.json' есть 2 ключа: "token_expiry" и "expires_in". И я думаю, что у одного из них есть ответ, но я не уверен, будет ли каждый час или до истечения срока действия токена?
"token_expiry": "2019-03-04T20:00:48Z",
"token_response": {
"expires_in": 3600