Skip to main content

python package that implement a scraping for israeli supermarket data

Project description

Israel Supermarket Scraper: Clients to download the data published by the supermarkets.

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

שקיפות מחירים (השוואת מחירים) - https://www.gov.il/he/departments/legalInfo/cpfta_prices_regulations

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

🤗 Want to support my work?

Buy Me A Coffee

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

Notice:

  • Berekt and Quik are flaky! They will not fail the testing framework, but you can still use them.
  • Some of the scrapers sites are blocked from being accessed from outside of Israel.

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_scarper?

There are a lot of projects in GitHub trying to scrape the supermarket data, but most of them are not stable or haven't been updated for a while, it's about time there will be one codebase that does the work completely.

You only need to run the following code to get all the data currently shared by the supermarkets.

from il_supermarket_scarper import MainScrapperRunner

scraper = MainScrapperRunner()
scraper.run()

Please notice! Since new files are constantly uploaded by the supermarket to their site, you will only get the current snapshot. In order to keep getting data, you will need to run this code more than one time to get the newly uploaded files.

Quick start

il_supermarket_scarper can be installed using pip:

python3 pip install il-supermarket-scraper

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/erlichsefi/israeli-supermarket-scarpers.git
# or if you don't have 'git' installed
python3 -m pip install -U https://github.com/erlichsefi/israeli-supermarket-scarpers/master

Running Docker

The docker is designed to run the scaper every 6 hours, (you change the cron expression if you would like, checkout the file 'crontab'), in every iteration the scraper will collect the files available to download and check if the file already exists before fetching it, either by scanning the dump folder, or checking the mongo.

docker-compose up -d

or if you want to use the existing image from docker hub:

docker pull erlichsefi/israeli-supermarket-scarpers:latest

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 Scraper 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_scraper-0.4.4.tar.gz (35.6 kB view details)

Uploaded Source

Built Distribution

il_supermarket_scraper-0.4.4-py3-none-any.whl (54.5 kB view details)

Uploaded Python 3

File details

Details for the file il_supermarket_scraper-0.4.4.tar.gz.

File metadata

File hashes

Hashes for il_supermarket_scraper-0.4.4.tar.gz
Algorithm Hash digest
SHA256 a3dea17da554f086700145371cf8411c2fe52df428218696b78879f45a3a118b
MD5 8b2b5774b4e8eeba1f6a74e7ec9e76b5
BLAKE2b-256 c909c001a9b726a68165403ca269b0f9f0873a9cdc9fae7e6547df2fb70184e8

See more details on using hashes here.

File details

Details for the file il_supermarket_scraper-0.4.4-py3-none-any.whl.

File metadata

File hashes

Hashes for il_supermarket_scraper-0.4.4-py3-none-any.whl
Algorithm Hash digest
SHA256 47290b9289a6350145e10864a8b5de4e468f0cab7efb4d5f25d3da0631d12f6c
MD5 3e1bea6a91bcb3e6834e1721302b3728
BLAKE2b-256 4766da1228cf24d79b34113e8854dd09380e032e3d35d54d50f0b747241afc17

See more details on using hashes here.

Supported by

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