# Search processors

## Abstract processor class

Abstract base classes for engine request processors.

class searx.search.processors.abstract.EngineProcessor(engine, engine_name: str)

  Base classes used for all types of request processors.

  get_params(search_query, engine_category)

    Returns a set of (see request params) or `None` if request is not supported.

    Not supported conditions (`None` is returned):

    - A page-number > 1 when engine does not support paging.

    - A time range when the engine does not support time range.

class searx.search.processors.abstract.SuspendedStatus

  Class to handle suspend state.

## Offline processor

Processors for engine-type: `offline`

class searx.search.processors.offline.OfflineProcessor(engine, engine_name: str)

  Processor class used by `offline` engines

## Online processor

Processors for engine-type: `online`

class searx.search.processors.online.OnlineProcessor(engine, engine_name: str)

  Processor class for `online` engines.

  get_params(search_query, engine_category)

    Returns a set of request params or `None` if request is not supported.

searx.search.processors.online.default_request_params()

  Default request parameters for `online` engines.

## Online currency processor

Processors for engine-type: `online_currency`

class searx.search.processors.online_currency.OnlineCurrencyProcessor(engine, engine_name: str)

  Processor class used by `online_currency` engines.

  get_params(search_query, engine_category)

    Returns a set of request params or `None` if search query does not match to `parser_re`.

## Online dictionary processor

Processors for engine-type: `online_dictionary`

class searx.search.processors.online_dictionary.OnlineDictionaryProcessor(engine, engine_name: str)

  Processor class used by `online_dictionary` engines.

  get_params(search_query, engine_category)

    Returns a set of request params or `None` if search query does not match to `parser_re`.

## Online URL search processor

Processors for engine-type: `online_url_search`

class searx.search.processors.online_url_search.OnlineUrlSearchProcessor(engine, engine_name: str)

  Processor class used by `online_url_search` engines.

  get_params(search_query, engine_category)

    Returns a set of request params or `None` if search query does not match to `re_search_urls`.