diff --git a/README.md b/README.md index 1d7b609..d6e3b60 100644 --- a/README.md +++ b/README.md @@ -1,20 +1,89 @@ -# tauron-elicznik-scraper -Simple python3 script that outputs JSON with energy meter data from Tauron eLicznik service +# Tauron eLicznik Scraper -1. Add login info and energy meter ID into script -2. Run with ```python3 elicznik.py``` -3. Get JSON output with energy meter data from last day +This Python 3 package allows to read electric energy meter reading history from the +[Tauron eLicznik](https://elicznik.tauron-dystrybucja.pl/) website. -Energy meter ID can be obtained from https://elicznik.tauron-dystrybucja.pl/ website under "Punkt poboru:" field. -Script is currently tested only with G11 tariff. +## Command line usage -Optionally you can save JSON as file - just uncomment 2 last lines. +With the package installed readings can be retrieved by simply running the `elicznik` command: +``` +usage: elicznik [-h] [--format {raw,table,csv}] username password [date] -You can change dane[chartDay] to get data from another day (not only the last one). +positional arguments: + username tauron-dystrybucja.pl user name + password tauron-dystrybucja.pl password + date Date of data to be retrieved -If JSON **should not** contain energy produced from solar panels, please comment the "dane[checkOZE]": "on". +optional arguments: + -h, --help show this help message and exit + --format {raw,table,csv} + Specify the output format +``` -Enjoy :) +Example +``` +$ elicznik freddy@example.com secretpassword 10.7.2021 +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 +``` -![Example usage with Grafana](https://i.imgur.com/vueg6uj.png) + +## API usage + +``` +import datetime +import elicznik + +m = elicznik.ELicznik("freddy@example.com", "secretpassword") +m.login() + +readings = m.get_readings(datetime.date(2021, 7, 10)) + +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 +* Allow reading a date range instead of just one day +* 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. diff --git a/example_output.json b/example_output.json deleted file mode 100644 index cb567d4..0000000 --- a/example_output.json +++ /dev/null @@ -1,440 +0,0 @@ -{ - "name": { - "chart": "Pob\u00f3r 04.03.2020", - "OZE": "Generacja 04.03.2020" - }, - "dane": { - "chart": [{ - "EC": "0.089", - "Date": "2020-03-04", - "Hour": "1", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.083", - "Date": "2020-03-04", - "Hour": "2", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.081", - "Date": "2020-03-04", - "Hour": "3", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.078", - "Date": "2020-03-04", - "Hour": "4", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.084", - "Date": "2020-03-04", - "Hour": "5", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.088", - "Date": "2020-03-04", - "Hour": "6", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.358", - "Date": "2020-03-04", - "Hour": "7", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.075", - "Date": "2020-03-04", - "Hour": "8", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.151", - "Date": "2020-03-04", - "Hour": "9", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.14", - "Date": "2020-03-04", - "Hour": "10", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.236", - "Date": "2020-03-04", - "Hour": "11", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.091", - "Date": "2020-03-04", - "Hour": "12", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.09", - "Date": "2020-03-04", - "Hour": "13", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.091", - "Date": "2020-03-04", - "Hour": "14", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.634", - "Date": "2020-03-04", - "Hour": "15", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.216", - "Date": "2020-03-04", - "Hour": "16", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.132", - "Date": "2020-03-04", - "Hour": "17", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "1.32", - "Date": "2020-03-04", - "Hour": "18", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "1.221", - "Date": "2020-03-04", - "Hour": "19", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.447", - "Date": "2020-03-04", - "Hour": "20", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.388", - "Date": "2020-03-04", - "Hour": "21", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.154", - "Date": "2020-03-04", - "Hour": "22", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.119", - "Date": "2020-03-04", - "Hour": "23", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, { - "EC": "0.101", - "Date": "2020-03-04", - "Hour": "24", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }], - "zone": [], - "zoneN": 0, - "other": [], - "OZE": { - "1": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "1", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "2": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "2", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "3": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "3", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "4": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "4", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "5": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "5", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "6": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "6", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "7": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "7", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "8": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "8", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "9": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "9", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "10": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "10", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "11": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "11", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "12": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "12", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "13": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "13", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "14": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "14", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "15": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "15", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "16": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "16", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "17": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "17", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "18": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "18", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "19": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "19", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "20": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "20", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "21": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "21", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "22": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "22", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "23": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "23", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - }, - "24": { - "EC": "0", - "Date": "2020-03-04", - "Hour": "24", - "Status": "0", - "Extra": "0", - "Zone": "1", - "Taryfa": "G11" - } - }, - "myAverage": [], - "weather": [], - "cloudiness": [] - }, - "sum": 6.467, - "sumOther": 0, - "sumMyAverage": 0, - "OZEValue": 0, - "sLastReadOZE": "Stan licznika:
Strefa T1
000001<\/dd><\/span>", - "sumTarget": 0, - "pie": [], - "TargetValue": 0, - "TargetRange": 0, - "legend": "", - "countTarif": 1, - "sCompareTable": "", - "isFull": true, - "isFullOther": true, - "ok": 1 -} \ No newline at end of file diff --git a/output.json b/output.json deleted file mode 100644 index d100f9f..0000000 --- a/output.json +++ /dev/null @@ -1,495 +0,0 @@ -{ - "name": { - "chart": "Pob\u00f3r 10.07.2021", - "OZE": "Oddanie 10.07.2021" - }, - "dane": { - "chart": { - "1": { - "EC": "0.105", - "Date": "2021-07-10", - "Hour": "1", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "2": { - "EC": "0.105", - "Date": "2021-07-10", - "Hour": "2", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "3": { - "EC": "0.096", - "Date": "2021-07-10", - "Hour": "3", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "4": { - "EC": "0.108", - "Date": "2021-07-10", - "Hour": "4", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "5": { - "EC": "0.119", - "Date": "2021-07-10", - "Hour": "5", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "6": { - "EC": "0.09", - "Date": "2021-07-10", - "Hour": "6", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "7": { - "EC": "0.026", - "Date": "2021-07-10", - "Hour": "7", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "8": { - "EC": "0", - "Date": "2021-07-10", - "Hour": "8", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "9": { - "EC": "0.094", - "Date": "2021-07-10", - "Hour": "9", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "10": { - "EC": "0.013", - "Date": "2021-07-10", - "Hour": "10", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "11": { - "EC": "0", - "Date": "2021-07-10", - "Hour": "11", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "12": { - "EC": "0", - "Date": "2021-07-10", - "Hour": "12", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "13": { - "EC": "0", - "Date": "2021-07-10", - "Hour": "13", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "14": { - "EC": "0", - "Date": "2021-07-10", - "Hour": "14", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "15": { - "EC": "0", - "Date": "2021-07-10", - "Hour": "15", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "16": { - "EC": "0.036", - "Date": "2021-07-10", - "Hour": "16", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "17": { - "EC": "0.596", - "Date": "2021-07-10", - "Hour": "17", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "18": { - "EC": "0.008", - "Date": "2021-07-10", - "Hour": "18", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "19": { - "EC": "0.125", - "Date": "2021-07-10", - "Hour": "19", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "20": { - "EC": "0.088", - "Date": "2021-07-10", - "Hour": "20", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "21": { - "EC": "0.177", - "Date": "2021-07-10", - "Hour": "21", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "22": { - "EC": "0.212", - "Date": "2021-07-10", - "Hour": "22", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "23": { - "EC": "0.193", - "Date": "2021-07-10", - "Hour": "23", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - }, - "24": { - "EC": "0.102", - "Date": "2021-07-10", - "Hour": "24", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba", - "Taryfa": "G11" - } - }, - "zone": [], - "zoneN": 0, - "other": [], - "OZE": { - "1": { - "EC": "0", - "Date": "2021-07-10", - "Hour": "1", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "2": { - "EC": "0", - "Date": "2021-07-10", - "Hour": "2", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "3": { - "EC": "0", - "Date": "2021-07-10", - "Hour": "3", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "4": { - "EC": "0", - "Date": "2021-07-10", - "Hour": "4", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "5": { - "EC": "0", - "Date": "2021-07-10", - "Hour": "5", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "6": { - "EC": "0", - "Date": "2021-07-10", - "Hour": "6", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "7": { - "EC": "0.066", - "Date": "2021-07-10", - "Hour": "7", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "8": { - "EC": "0.599", - "Date": "2021-07-10", - "Hour": "8", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "9": { - "EC": "1.513", - "Date": "2021-07-10", - "Hour": "9", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "10": { - "EC": "1.729", - "Date": "2021-07-10", - "Hour": "10", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "11": { - "EC": "2.362", - "Date": "2021-07-10", - "Hour": "11", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "12": { - "EC": "2.226", - "Date": "2021-07-10", - "Hour": "12", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "13": { - "EC": "2.711", - "Date": "2021-07-10", - "Hour": "13", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "14": { - "EC": "2.213", - "Date": "2021-07-10", - "Hour": "14", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "15": { - "EC": "2.652", - "Date": "2021-07-10", - "Hour": "15", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "16": { - "EC": "1.668", - "Date": "2021-07-10", - "Hour": "16", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "17": { - "EC": "1.406", - "Date": "2021-07-10", - "Hour": "17", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "18": { - "EC": "0.673", - "Date": "2021-07-10", - "Hour": "18", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "19": { - "EC": "0.644", - "Date": "2021-07-10", - "Hour": "19", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "20": { - "EC": "0.55", - "Date": "2021-07-10", - "Hour": "20", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "21": { - "EC": "0.024", - "Date": "2021-07-10", - "Hour": "21", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "22": { - "EC": "0", - "Date": "2021-07-10", - "Hour": "22", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "23": { - "EC": "0", - "Date": "2021-07-10", - "Hour": "23", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - }, - "24": { - "EC": "0", - "Date": "2021-07-10", - "Hour": "24", - "Status": "0", - "Extra": "N", - "Zone": "1", - "ZoneName": "Ca\u0142a doba" - } - }, - "myAverage": [], - "weather": [], - "cloudiness": [] - }, - "sum": 2.2929999999999997, - "sumOther": 0, - "sumMyAverage": 0, - "avgMyAverageValue": 0, - "OZEValue": 21.035999999999998, - "sLastReadOZE": "Stan licznika na dzie\u0144: 2021-07-10
Strefa T1
000499
", - "sumTarget": 0, - "pie": [], - "TargetValue": 0, - "TargetRange": 0, - "legend": "", - "countTarif": 1, - "sCompareTable": "", - "isFull": true, - "isFullOther": true, - "average": 0.096, - "predict": 0, - "averageOther": 0, - "averageOZE": 0.877, - "predictOZE": 0, - "ok": 1 -} diff --git a/setup.cfg b/setup.cfg new file mode 100644 index 0000000..8183238 --- /dev/null +++ b/setup.cfg @@ -0,0 +1,2 @@ +[metadata] +license_files = LICENSE diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..931db2f --- /dev/null +++ b/setup.py @@ -0,0 +1,36 @@ +from setuptools import setup, find_packages +import pathlib + +here = pathlib.Path(__file__).parent.resolve() + +long_description = (here / 'README.md').read_text(encoding='utf-8') + +setup( + name='elicznik', + version='1.0', + description='Tauron eLicznik scrapper', + long_description=long_description, + long_description_content_type='text/markdown', + url='https://github.com/mlesniew/elicznik', + author='Michał Leśniewski', + author_email='mlesniew@gmail.com', + classifiers=[ + 'Development Status :: 3 - Alpha', + 'Intended Audience :: Developers', + 'Intended Audience :: End Users/Desktop', + 'Topic :: Software Development :: Build Tools', + 'License :: OSI Approved :: MIT License', + 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3 :: Only', + ], + keywords='elicznik, tauron, scrapper', + package_dir={'': 'src'}, + packages=find_packages(where='src'), + python_requires='>=3.6, <4', + install_requires=['requests', 'tabulate'], + entry_points={ + 'console_scripts': [ + 'elicznik=elicznik.__main__:main', + ], + }, +) diff --git a/elicznik/__init__.py b/src/elicznik/__init__.py similarity index 100% rename from elicznik/__init__.py rename to src/elicznik/__init__.py diff --git a/elicznik/__main__.py b/src/elicznik/__main__.py similarity index 93% rename from elicznik/__main__.py rename to src/elicznik/__main__.py index d5e5705..e1079cf 100644 --- a/elicznik/__main__.py +++ b/src/elicznik/__main__.py @@ -1,6 +1,7 @@ import argparse import csv import datetime +import json import sys import tabulate @@ -32,7 +33,7 @@ def main(): elicznik.login() if args.format == "raw": - print(elicznik.get_raw_readings(args.date)) + print(json.dumps(elicznik.get_raw_readings(args.date), indent=4)) return result = elicznik.get_readings(args.date) diff --git a/elicznik/elicznik.py b/src/elicznik/elicznik.py similarity index 100% rename from elicznik/elicznik.py rename to src/elicznik/elicznik.py diff --git a/elicznik/session.py b/src/elicznik/session.py similarity index 100% rename from elicznik/session.py rename to src/elicznik/session.py