mirror of
https://github.com/mlesniew/elicznik.git
synced 2026-01-03 11:35:02 +01:00
112 lines
3.6 KiB
Markdown
112 lines
3.6 KiB
Markdown
# Tauron eLicznik Scraper
|
|
|
|
This Python 3 package allows to read electric energy meter reading history from the
|
|
[Tauron eLicznik](https://elicznik.tauron-dystrybucja.pl/) website.
|
|
|
|
|
|
## Installation
|
|
|
|
The package can be installed using pip:
|
|
|
|
```
|
|
$ pip3 install elicznik
|
|
```
|
|
|
|
|
|
## Command line usage
|
|
|
|
With the package installed readings can be retrieved by simply running the `elicznik` command:
|
|
```
|
|
usage: elicznik [-h] [--format {raw,table,csv}] username password [start date] [end date]
|
|
|
|
positional arguments:
|
|
username tauron-dystrybucja.pl user name
|
|
password tauron-dystrybucja.pl password
|
|
start date Start date of date range to be retrieved, in ISO8601 format. If the end date is omitted, it's the only date for which
|
|
measurements are retrieved.
|
|
end date End date of date range to be retrieved, inclusive, in ISO8601 format. Can be omitted to only retrieve a single day's
|
|
measurements.
|
|
|
|
optional arguments:
|
|
-h, --help show this help message and exit
|
|
--format {raw,table,csv}
|
|
Specify the output format
|
|
```
|
|
|
|
### Example
|
|
|
|
```
|
|
$ elicznik freddy@example.com secretpassword 2021-07-10
|
|
timestamp consumed produced
|
|
------------------- ---------- ----------
|
|
2021-07-03 01:00:00 0.116 0
|
|
2021-07-03 02:00:00 0.105 0
|
|
2021-07-03 03:00:00 0.117 0
|
|
2021-07-03 04:00:00 0.108 0
|
|
2021-07-03 05:00:00 0.125 0
|
|
2021-07-03 06:00:00 0.11 0
|
|
2021-07-03 07:00:00 0.025 0.107
|
|
2021-07-03 08:00:00 0 1.058
|
|
2021-07-03 09:00:00 0.26 0.846
|
|
2021-07-03 10:00:00 0.034 1.326
|
|
2021-07-03 11:00:00 0 1.523
|
|
2021-07-03 12:00:00 0 1.166
|
|
2021-07-03 13:00:00 0 0.637
|
|
2021-07-03 14:00:00 0.677 0.482
|
|
2021-07-03 15:00:00 0.741 0.46
|
|
2021-07-03 16:00:00 0.031 0.284
|
|
2021-07-03 17:00:00 0 0.393
|
|
2021-07-03 18:00:00 0.051 0.058
|
|
2021-07-03 19:00:00 0.347 0.02
|
|
2021-07-03 20:00:00 0.378 0.021
|
|
2021-07-03 21:00:00 0.246 0
|
|
2021-07-03 22:00:00 0.213 0
|
|
2021-07-03 23:00:00 0.269 0
|
|
2021-07-04 00:00:00 0.138 0
|
|
```
|
|
|
|
|
|
## API usage
|
|
|
|
```
|
|
import datetime
|
|
import elicznik
|
|
|
|
with elicznik.ELicznik("freddy@example.com", "secretpassword") as m:
|
|
# date range
|
|
print("July 2021")
|
|
|
|
readings = m.get_readings(datetime.date(2021, 7, 1), datetime.date(2021, 7, 31))
|
|
|
|
for timestamp, consumed, produced in readings:
|
|
print(timestamp, consumed, produced)
|
|
|
|
# single day
|
|
print("Yesterday")
|
|
|
|
yesterday = datetime.date.today() - datetime.timedelta(days=1)
|
|
readings = m.get_readings(yesterday)
|
|
|
|
for timestamp, consumed, produced in readings:
|
|
print(timestamp, consumed, produced)
|
|
```
|
|
|
|
|
|
## TODO & bugs
|
|
|
|
* Add support for accounts with multiple meters
|
|
* Convert the dates to UTC and handle switches from and to DST properly
|
|
* Make the dependency on tabulate optional
|
|
|
|
|
|
## Similar projects
|
|
|
|
This project is based on the excellent
|
|
[tauron-elicznik-scrapper](https://github.com/MichalZaniewicz/tauron-elicznik-scraper) project by
|
|
[Michał Zaniewicz](https://github.com/MichalZaniewicz), but there are several other available out there.
|
|
|
|
Among the other [similar eLicznik projects on GitHub](https://github.com/search?q=elicznik) there's one especially
|
|
worth checking out:
|
|
the [Tauron AMIplus sensor](https://github.com/PiotrMachowski/Home-Assistant-custom-components-Tauron-AMIplus) -- it's
|
|
an eLicznik Home Assistant integration.
|