Code source de gspread.exceptions

# -*- coding: utf-8 -*-

"""
gspread.exceptions
~~~~~~~~~~~~~~~~~~

Exceptions used in gspread.

"""


class GSpreadException(Exception):
    """A base class for gspread's exceptions."""


class SpreadsheetNotFound(GSpreadException):
    """Trying to open non-existent or inaccessible spreadsheet."""


[docs]class WorksheetNotFound(GSpreadException): """Trying to open non-existent or inaccessible worksheet."""
class CellNotFound(GSpreadException): """Cell lookup exception.""" class NoValidUrlKeyFound(GSpreadException): """No valid key found in URL.""" class IncorrectCellLabel(GSpreadException): """The cell label is incorrect.""" class APIError(GSpreadException): def __init__(self, response): super(APIError, self).__init__(self._extract_text(response)) self.response = response def _extract_text(self, response): return self._text_from_detail(response) or response.text def _text_from_detail(self, response): try: errors = response.json() return errors['error'] except (AttributeError, KeyError, ValueError): return None