cata_log_hub.providers.rewe module

class cata_log_hub.providers.rewe.Rewe[source]

Bases: Provider

Provider class for Rewe catalog.

uid: str = 'rewe-de'

A unique identifier for this provider class. Must not be changed after definition.

name: str = 'Rewe'

The name of this catalog provider.

description: str = 'Rewe Katalog'

The user-facing description for this provider

url: str = 'https://www.rewe.de/angebote/'

The url of this catalog provider

region

alias of Germany

class Configuration[source]

Bases: Configuration

markt_id: str
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

first_page_number: int = 0

The number of the first page in the providers api

overview_url_format = 'https://view.publitas.com/rewe-markt/rewe_{relevant_datetime:%Y}_wk{week_number:02}_{markt_id}/spreads.json'
base_url = 'https://view.publitas.com'
_get_catalog_data()[source]

Get and store the data for this providers catalog. Can be passed if no data beside the pagenumber is required to fetch pages from the provider.

Return type:

None

_get_page(page_number)[source]

Get one page from the provider.

Parameters:

page_number (PageNumber) – The number of the page in the numbering of the provider.

Return type:

bytes

Returns:

The downloaded page in bytes.

_get_valid_since()[source]

Get the datetime since which this providers catalog is valid.

Return type:

datetime

_get_valid_until()[source]

Get the datetime until which this providers catalog is valid.

Return type:

datetime

_logger = <Logger cata_log_hub.providers.rewe.Rewe (WARNING)>
class cata_log_hub.providers.rewe.RewePreview[source]

Bases: Preview, Rewe

Provider class for Rewe preview catalog.

uid: str = 'rewe-de-preview'

A unique identifier for this provider class. Must not be changed after definition.

name: str = 'Rewe-Vorschau'

The name of this catalog provider.

description: str = 'Rewe Katalog nächste Woche'

The user-facing description for this provider

schedule: str = '30 4 * * 6,0'

The crontab schedule for fetching this provider

_get_preview_timedelta()[source]

Get the dynamic timedelta between the relevant datetime and the relevant datetime of the preview.

Return type:

timedelta

Returns:

The preview timedelta.

_logger = <Logger cata_log_hub.providers.rewe.RewePreview (WARNING)>