Skip to main content

No project description provided

Project description

Buy me a coffee

Unofficial Python wrapper for the Picnic API. While not all API methods have been implemented yet, you’ll find most of what you need to build a working application are available.

This library is not affiliated with Picnic and retrieves data from the endpoints of the mobile application. Use at your own risk.

Getting started

The easiest way to install is directly from pip:

$ pip install python-picnic-api

Usage

I’ll go over a few common operations here you’ll most likely use in applications. To login:

from python_picnic_api import PicnicAPI

picnic = PicnicAPI(username='username', password='password', country_code="NL")

The country_code parameter defaults to NL, but you have to change it if you live in a different country than the Netherlands (Germany: DE, Belgium: BE). You can also store your credentials by setting the store value to true, this will store your credentials and country_code in /config/app.yaml.

Searching for a product

>>> picnic.search('coffee')
[{'type': 'CATEGORY', 'id': 'coffee', 'links': [{'type': 'SEARCH', 'href': 'https://storefront-prod.nl.picnicinternational.com/api/15/search?search_term=coffee'}], 'name': 'coffee', 'items': [{'type': 'SINGLE_ARTICLE', 'id': '10511523', 'decorators': [{'type': 'UNIT_QUANTITY', 'unit_quantity_text': '500 gram'}], 'name': 'Lavazza espresso koffiebonen', 'display_price': 599, 'price': 599, 'image_id': 'd3fb2888fc41514bc06dfd6b52f8622cc222d017d2651501f227a537915fcc4f', 'max_count': 50, 'unit_quantity': '500 gram', 'unit_quantity_sub': '€11.98/kg', 'tags': []}, ...

Check cart

>>> picnic.get_cart()
{'type': 'ORDER', 'id': 'shopping_cart', 'items': [], 'delivery_slots': [...

Manipulating your cart

All of these methods will return the shopping cart.

# adding 2 'Lavazza espresso koffiebonen' to cart
picnic.add_product('10511523', count=2)

# removing 1 'Lavazza espresso koffiebonen' from cart
picnic.remove_product('10511523')

# clearing the cart
picnic.clear_cart()

See upcoming deliveries

>>> picnic.get_current_deliveries()
[]

See available delivery slots

>>> picnic.get_delivery_slots()

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

python_picnic_api2-1.3.0.tar.gz (33.3 kB view details)

Uploaded Source

Built Distribution

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

python_picnic_api2-1.3.0-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

Details for the file python_picnic_api2-1.3.0.tar.gz.

File metadata

  • Download URL: python_picnic_api2-1.3.0.tar.gz
  • Upload date:
  • Size: 33.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for python_picnic_api2-1.3.0.tar.gz
Algorithm Hash digest
SHA256 677a3b0f432b1a9f820c7796fe282d14e1819e4616a45efc75d15df5a5a25e31
MD5 0ee6cfe7b6a5c4843458d887565064b3
BLAKE2b-256 95d2f2923f4660ee4d1e64873f7dc6fef65082df4d13d2dca71c40b632c4b3c4

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_picnic_api2-1.3.0.tar.gz:

Publisher: release.yml on codesalatdev/python-picnic-api

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_picnic_api2-1.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for python_picnic_api2-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 422fa4609f0e91ffe155d23b86b84c51f9fe156f9dc696867b1bc6b8882dcdf3
MD5 20d2271d19c35405d8541b6a70f87123
BLAKE2b-256 64b451e0390a9e41edf5e3e2d5727206346695a76df503c77ab5ebdf98766eff

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_picnic_api2-1.3.0-py3-none-any.whl:

Publisher: release.yml on codesalatdev/python-picnic-api

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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