Skip to main content

python package that process the data dumped by the israeli supermarket

Project description

Israel Supermarket Parsers: Clients to parser the data published by the supermarkets.

This is a parser for ALL the supermarket chains listed in the GOV.IL site.

שקיפות מחירים (השוואת מחירים) - https://www.gov.il/he/departments/legalInfo/cpfta_prices_regulations הגדרת הקבצים שהיו צריכים להיות זמינים באתרים - https://www.nevo.co.il/law_html/law01/501_131.htm

Unit & Integration Tests CodeQL Pylint Publish Docker image Upload Python Package

Daily Automatic Testing

The test suite is scheduled to run daily, so you can see if the supermarket chains have changed something in their interface and the package will not work properly.

Status: Scheduled Tests

🤗 Want to support my work?

Buy Me A Coffee

Got a question?

You can email me at erlichsefi@gmail.com

If you think you've found a bug:

  • Create issue in issue tracker to see if it's already been reported
  • Please consider solving the issue by yourself and creating a pull request.

What is il_supermarket_parsers?

A simple access layer to the data the supermarkets publish. You can download the data using https://github.com/OpenIsraeliSupermarkets/israeli-supermarket-scarpers.

You only need to run the following code to parse all the data currently shared by the supermarkets and was downloaded using the package above.

from il_supermarket_parsers import ConvertingTask

task = ConvertingTask(
    source_configuration={"folder": "dumps"},
    output_configuration=[{"output_mode": "csv", "output_folder": "outputs"}],
    status_configuration={"database_type": "json", "base_path": "outputs"},
)
task.start()
task.join()

Optional filters (same names as Docker): enabled_parsers, files_types, and multiprocessing. Pass a maximum number of files with task.start(limit=10).

Quick start

il_supermarket_parsers can be installed using pip:

python3 pip install il_supermarket_parsers

If you want to run the latest version of the code, you can install it from the repo directly:

python3 -m pip install -U git+https://github.com/OpenIsraeliSupermarkets/israeli-supermarket-parsers.git
# or if you don't have 'git' installed
python3 -m pip install -U https://github.com/OpenIsraeliSupermarkets/israeli-supermarket-parsers/main

Running Docker

Build yourself:

docker build -t erlichsefi/israeli-supermarket-parsers --target prod .

or pull the existing image from docker hub:

docker pull erlichsefi/israeli-supermarket-parsers:latest

Then running it using:

docker run  -v "./dumps:/usr/src/app/dumps" \
            -v "./outputs:/usr/src/app/outputs" \
            -e ENABLED_PARSERS="BAREKET,YAYNO_BITAN_AND_CARREFOUR" \
            -e ENABLED_FILE_TYPES="STORE_FILE" \
            -e NUMBER_OF_PROCESSES=4 \
            -e LIMIT=1 \
            erlichsefi/israeli-supermarket-parsers

Optional paths (defaults match the volumes above): DATA_FOLDER (input), OUTPUT_FOLDER (CSV output), STATUS_FOLDER (JSON status; defaults to OUTPUT_FOLDER). Optional tuning: NUMBER_OF_PROCESSES, ENABLED_PARSERS, and ENABLED_FILE_TYPES (comma-separated enum names), LIMIT.

Contributing

Help in testing, development, documentation and other tasks is highly appreciated and useful to the project. There are tasks for contributors of all experience levels.

If you need help getting started, don't hesitate to contact me.

Development status

IL SuperMarket Parser is beta software, as far as i see devlopment stoped until new issues will be found.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

il_supermarket_parser-1.0.2.tar.gz (41.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

il_supermarket_parser-1.0.2-py3-none-any.whl (62.5 kB view details)

Uploaded Python 3

File details

Details for the file il_supermarket_parser-1.0.2.tar.gz.

File metadata

  • Download URL: il_supermarket_parser-1.0.2.tar.gz
  • Upload date:
  • Size: 41.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for il_supermarket_parser-1.0.2.tar.gz
Algorithm Hash digest
SHA256 b6aa4d192fa2c5203a44887d4f9e6894a84694ae35cd4a1e6d2fed0b228ac197
MD5 1e20522871a3c42895bc293ca155c0ef
BLAKE2b-256 d4468bc298e447949ba3c4b815f94bace3e6e9ffc9af31eaa211b3fbeb4cea16

See more details on using hashes here.

File details

Details for the file il_supermarket_parser-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for il_supermarket_parser-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 14a0be4a97180a98ce1900449b6b952476ab186b073ee6b1c737b179ab244303
MD5 b78d3345e5f828fe5c46ffe925098521
BLAKE2b-256 4ebb88a32156b9f5c50c5491b18bba8a300b2cd4cd9c6be179c7efef59995fc6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page