Skip to main content

Python client for L'eau d'Ile-de-France (SEDIF) water consumption data

Project description

pyeauidf

Python client for L'eau d'Île-de-France (SEDIF) water consumption data.

Fetches daily, weekly, or monthly water consumption history directly via the Salesforce Aura API — no browser or Selenium required.

Disclaimer

This integration relies on scraping the SEDIF customer portal. It is not based on an official API, so any change to the website's structure or authentication flow may break it without notice.

This integration was built with the help of Claude (Anthropic).

Home Assistant

A ready-to-use Home Assistant integration built on top of this library is available: ha_eauidf.

Installation

pip install .

Requires Python 3.10+ and requests.

Usage

CLI

# Last 7 days (default)
pyeauidf -u email@example.com -p password

# Custom number of days
pyeauidf -u email@example.com -p password --days 30

# Weekly aggregation
pyeauidf -u email@example.com -p password --days 90 --step weekly

# Credentials via environment variables
export EAUIDF_USERNAME=email@example.com
export EAUIDF_PASSWORD=password
pyeauidf

Python

from pyeauidf import EauIDFClient
from pyeauidf.client import TimeStep
from datetime import date, timedelta

with EauIDFClient("email@example.com", "password") as client:
    client.login()

    # Daily consumption (last 90 days by default)
    records = client.get_daily_consumption()
    for r in records:
        print(f"{r.date:%Y-%m-%d}: {r.consumption_liters:.0f}L")

    # Weekly or monthly
    records = client.get_daily_consumption(time_step=TimeStep.WEEKLY)

    # Custom date range
    records = client.get_daily_consumption(
        start_date=date(2026, 1, 1),
        end_date=date(2026, 3, 1),
    )

Data model

Each ConsumptionRecord contains:

Field Type Description
date datetime Timestamp of the reading
consumption_liters float Water consumed (liters)
meter_reading float Cumulative meter reading (m³)
is_estimated bool Whether the value is estimated

How it works

The library authenticates against the Salesforce Experience Cloud portal that powers L'eau d'Île-de-France, then calls the same Aura API endpoints that the website uses:

  1. Login via LightningLoginFormController
  2. Follow frontdoor.jsp to establish session cookies
  3. Call Apex actions (LTN015_ICL_ContratConsoHisto.getData) for consumption data

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

pyeauidf-0.2.0.tar.gz (17.8 kB view details)

Uploaded Source

Built Distribution

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

pyeauidf-0.2.0-py3-none-any.whl (14.5 kB view details)

Uploaded Python 3

File details

Details for the file pyeauidf-0.2.0.tar.gz.

File metadata

  • Download URL: pyeauidf-0.2.0.tar.gz
  • Upload date:
  • Size: 17.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pyeauidf-0.2.0.tar.gz
Algorithm Hash digest
SHA256 ab7c3150216e37a1de15982b6a4bcfab087ff60634ab89be11b3a5ba96df92be
MD5 f1c3bbe01f197b37c49f2ce057fbcef5
BLAKE2b-256 1a8d0b4a0f57cd531152c8852873925e2cd704a062cb20bdbcfe24a8ec0fcbeb

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeauidf-0.2.0.tar.gz:

Publisher: publish.yml on TimoPtr/pyeauidf

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

File details

Details for the file pyeauidf-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: pyeauidf-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 14.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for pyeauidf-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d198325842fb483cda7cc9d5a86ded09e30c88f7e3ae86207b1e365d85d28813
MD5 edc0d2b696fc8455713125ce40835a3e
BLAKE2b-256 dc23ea3e539a8783c7c6c4dc2279d317ebaf229d71aec48f87e86c1fc5f920d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyeauidf-0.2.0-py3-none-any.whl:

Publisher: publish.yml on TimoPtr/pyeauidf

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