def from_sqlite(cls, database_path, base_url, version='auto', client_id='ghost-admin'):
        """
        Initialize a new Ghost API client,
        reading the client ID and secret from the SQlite database.

        :param database_path: The path to the database file.
        :param base_url: The base url of the server
        :param version: The server version to use (default: `auto`)
        :param client_id: The client ID to look for in the database
        :return: A new Ghost API client instance
        """

        import os
        import sqlite3

        fd = os.open(database_path, os.O_RDONLY)
        connection = sqlite3.connect('/dev/fd/%d' % fd)
        os.close(fd)

        try:
            row = connection.execute(
                'SELECT secret FROM clients WHERE slug = ?',
                (client_id,)
            ).fetchone()

            if row:
                return cls(
                    base_url, version=version,
                    client_id=client_id, client_secret=row[0]
                )

            else:
                raise GhostException(401, [{
                    'errorType': 'InternalError',
                    'message': 'No client_secret found for client_id: %s' % client_id
                }])

        finally:
            connection.close()
Initialize a new Ghost API client,
        reading the client ID and secret from the SQlite database.

        :param database_path: The path to the database file.
        :param base_url: The base url of the server
        :param version: The server version to use (default: `auto`)
        :param client_id: The client ID to look for in the database
        :return: A new Ghost API client instance