Как подсчитываются кавычки api google листов? - PullRequest
0 голосов
/ 24 октября 2019

У меня есть код Python, который каждую минуту читает листы Google через API. Через некоторое время ресурс сталкивается с исчерпанной ошибкой. Первый вопрос: как отловить это исключение? И, во-вторых, самое важное, как подсчитываются эти квоты? Т.е. у меня есть один вызов функции, которая запускает связь с листами, а затем читает 20 строк. Так это одна цитата или 20 из них?

try:
        scope = ['https://spreadsheets.google.com/feeds','https://www.googleapis.com/auth/drive']
        creds = ServiceAccountCredentials.from_json_keyfile_name('/home/pi/Downloads/MeteoStation.json', scope)
        client = gspread.authorize(creds)
    except:
        logging.error("Sheets settings opening error")
        return None
    else:
        sheet = client.open('Sheetname').worksheet("Settings")
        send_regular_sms=str(sheet.cell(4,5).value)
        send_pressure_sms=str(sheet.cell(6,5).value)
        measuring_diff=float(sheet.cell(8,5).value)
        pressure_diff=float(sheet.cell(10,5).value)
        sms_delay=float(sheet.cell(12,5).value)
        sms_pressure_stop=float(sheet.cell(14,5).value)
        return [client,send_regular_sms,send_pressure_sms]

1 Ответ

0 голосов
/ 24 октября 2019

Для обработки ошибок вы можете использовать модуль googleapiclient

Для его установки используйте:

pip install google-api-python-client

, затем используйте try / исключением ввот так:

from googleapiclient.errors import HttpError
try:
   ...
except HttpError as err:
    print(err)

Что касается другой части вашего вопроса, используйте метод .row_values(), который вы можете увидеть в документации здесь на странице 13, чтобы вы могли получить всестрок и сохраните некоторые вызовы, но в любом случае имейте в виду ограничения, указанные здесь в документах API Google Sheets

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...