intelmq.lib.mixins package — intelmq 3.0.0.alpha.1 documentation

# intelmq.lib.mixins package

## Submodules

## intelmq.lib.mixins.http module

HttpMixin for IntelMQ

SPDX-FileCopyrightText: 2021 Birger Schacht SPDX-License-Identifier: AGPL-3.0-or-later

Based on create_request_session in intelmq.lib.utils and set_request_parameters in intelmq.lib.bot.Bot

class `intelmq.lib.mixins.http.` `HttpMixin`(**kwargs)

  Bases: `object`

  Setup a request session

  `http_get`(url: str, **kwargs) → requests.models.Response
  `http_header`: dict = {}
  `http_password` = None
  `http_proxy` = None
  `http_session`() → requests.sessions.Session
  `http_timeout_max_tries`: int = 3
  `http_timeout_sec`: int = 30
  `http_user_agent`: str = 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36'
  `http_username` = None
  `http_verify_cert`: bool = True
  `https_proxy` = None
  `setup`()
  `ssl_client_cert` = None

class `intelmq.lib.mixins.http.` `TimeoutHTTPAdapter`(*args, timeout=None, **kwargs)

  Bases: `requests.adapters.HTTPAdapter`

  A requests-HTTP Adapter which can set the timeout generally.

  `send`(*args, **kwargs)

    Sends PreparedRequest object. Returns Response object.

    Parameters

      - request – The `PreparedRequest` being sent.

      - stream – (optional) Whether to stream the request content.

      - timeout (float or tuple or urllib3 Timeout object) – (optional) How long to wait for the server to send data before giving up, as a float, or a (connect timeout, read timeout) tuple.

      - verify – (optional) Either a boolean, in which case it controls whether we verify the server’s TLS certificate, or a string, in which case it must be a path to a CA bundle to use

      - cert – (optional) Any user-provided SSL certificate to be trusted.

      - proxies – (optional) The proxies dictionary to apply to the request.

    Return type

      requests.Response

## Module contents

class `intelmq.lib.mixins.` `CacheMixin`(**kwargs)

  Bases: `object`

  `cache_exists`(key: str)
  `cache_flush`()

    Flushes the currently opened database by calling FLUSHDB.

  `cache_get`(key: str)
  `cache_get_redis_instance`()
  `cache_set`(key: str, value: Any, ttl: Optional[int] = None)
  `redis_cache_db`: int = 9
  `redis_cache_host`: str = '127.0.0.1'
  `redis_cache_password`: Optional[str] = None
  `redis_cache_port`: int = 6379
  `redis_cache_ttl`: int = 15

class `intelmq.lib.mixins.` `HttpMixin`(**kwargs)

  Bases: `object`

  Setup a request session

  `http_get`(url: str, **kwargs) → requests.models.Response
  `http_header`: dict = {}
  `http_password` = None
  `http_proxy` = None
  `http_session`() → requests.sessions.Session
  `http_timeout_max_tries`: int = 3
  `http_timeout_sec`: int = 30
  `http_user_agent`: str = 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36'
  `http_username` = None
  `http_verify_cert`: bool = True
  `https_proxy` = None
  `setup`()
  `ssl_client_cert` = None