I got tired of manually applying the digital coupons while grocery shopping and decided to automate the process. While doing so I've added extra features, currently this python's cli can:
The script works on kroger.com and other Kroger-owned grocery stores (Ralphs, Fry's, Fred Meyer, Dillons, Food 4 Less, etc).
You can download the latest version from the GitHub's releases tab.
git clone git@github.com:Shmakov/kroger-cli.git && cd ./kroger-cli
python3.8 -m venv ./venv
(you might need to install sudo apt-get install python3.8-venv
)source venv/bin/activate
pip install -r requirements.txt
python -m kroger_cli
The application support non-interactive mode by passing a name of a command. An example on how to complete Kroger's Survey: kroger-cli survey
.
Please use kroger-cli --help
to see list of all available commands. Alternatively you can run the application without any command to launch the interactive mode (you can see the screenshot of it below).
The initial plan was to use plain HTTP (and requests
package), however I couldn't sign in to the Kroger's website using it. Possibly had to do with csrf token validation and/or JavaScript-based protection. Because of that I had to use pyppeteer
, which is a python's port of Puppeteer
(Headless Chrome).