def __init__()

in psaw/PushshiftAPI.py [0:0]


    def __init__(self,
                 max_retries=20,
                 max_sleep=3600,
                 backoff=2,
                 rate_limit_per_minute=None,
                 max_results_per_request=1000,
                 detect_local_tz=True,
                 utc_offset_secs=None,
                 domain='api',
                 https_proxy=None,
                 shards_down_behavior='warn', # must be one of ['warn','stop' or None] # To do: add 'retry'
                 timeout=5,
                ):
        assert max_results_per_request <= 1000
        assert backoff >= 1

        self.max_retries = max_retries
        self.max_sleep   = max_sleep
        self.backoff     = backoff
        self.max_results_per_request = max_results_per_request

        self._utc_offset_secs = utc_offset_secs
        self._detect_local_tz = detect_local_tz

        self.domain = domain
        if https_proxy is not None:
            self.proxies = {"https": https_proxy }
        else:
            self.proxies = {}
        self.shards_down_behavior = shards_down_behavior
        self.timeout = timeout
        self.metadata_ = {}

        if rate_limit_per_minute is None:
            log.debug("Connecting to /meta endpoint to learn rate limit.")
            response = self._get(self.base_url.format(endpoint='meta'))
            rate_limit_per_minute = response['server_ratelimit_per_minute']
            log.debug("server_ratelimit_per_minute: %s" % rate_limit_per_minute)
        interval = 60 / rate_limit_per_minute
        self._rlcache = RateLimitCache(interval)