Integracja z MójLic...
 
Powiadomienia
Wyczyść wszystko

Integracja z MójLicznik od Energa S.A

43 Wpisów
11 Użytkownicy
6 Likes
3,626 Wyświetleń
Papuutek
(@papuutek)
Aktywny
Autor tematu
 

Cześć.
Popełniłem ostatnio skrypt, który pobiera mi dane z licznika ze strony mojlicznik.energa-operator.pl. Z racji, że Energa nie udostępnia żadnego API, skrypt bazuje na Web Scrapping'u. Link do projektu: https://github.com/PapuutekAPT/Energa-HomeAssistant-Integration .

 

Pozdrawiam,
Papuutek.

 
Dodane : 07/04/2021 9:22 am
matulekpl, mordal, isom and 2 people reacted
mordal
(@mordal)
Nowy
 

Super!

Już działa na openhabie, armbian.

Nie dało by się zamiast na Chromium zrobić tego na Lynx'ie? 😀

Dzięki! Maciek

 
Dodane : 17/05/2021 7:33 pm
baernie
(@baernie)
Aktywny
 

Cześć. Czy próbował ktoś wyciągnąć te dane przez Home Assistanta i sensor Scrape?

 
Dodane : 24/09/2021 6:48 am
matulekpl
(@matulekpl)
Senior
 
Dodane przez: @papuutek

Cześć.
Popełniłem ostatnio skrypt, który pobiera mi dane z licznika ze strony mojlicznik.energa-operator.pl. Z racji, że Energa nie udostępnia żadnego API, skrypt bazuje na Web Scrapping'u. Link do projektu: https://github.com/PapuutekAPT/Energa-HomeAssistant-Integration .

 

Pozdrawiam,
Papuutek.

Aj lov Ju!!!!

 
Dodane : 21/11/2021 4:11 pm
adrian reacted
baernie
(@baernie)
Aktywny
 

Skrypt działał cudownie, lecz po długim czasie zaktualizowano selenium z wersji 3 do 4 i już niestety skrypt nie działa. Jesteś w stanie coś z tym zrobić lub w instrukcji dać info jakie wersje modułów instalować?

 
Dodane : 16/12/2021 9:54 am
matulekpl
(@matulekpl)
Senior
 

@baernie wystarczy poprawić kilka rzeczy w pliku main.py
Mogę Ci podesłać swój, ale u mnie mam taryfę G12W i mam dwie strefy więc zrobiłem sobie sumowanie produkcji i zużycia w dwóch strefach.

 

 
Dodane : 16/12/2021 10:39 am
baernie
(@baernie)
Aktywny
 

@matulekpl jeżeli byłaby taka możliwość to bardzo bym prosił o info co na co zmienić

 
Dodane : 16/12/2021 11:37 am
matulekpl
(@matulekpl)
Senior
 

musiałbyś przypomnieć mi jakie błędy wyskakują przy uruchomieniu to Ci powiem którą linijkę na co zmienić.

A w razie co załączam swój plik.

 

 
Dodane : 16/12/2021 12:13 pm
tani_kredyt
(@tani_kredyt)
Aktywny
 

Witam wszystkich,

nie potrafiłem zainstalować skryptu Papuutek'a w Home Assistant OS wiec pomęczyłem się w node-red i stworzyłem scrappera do portalu Mój Licznik. Może się komuś przyda:

https://www.idrive.com/idrive/sh/sh?k=u0u4p3m4g2

Do tego ustawiamy dwa sensory w configuration.yaml:

sensor:
  - platform: mqtt
    name: "Power Produced"
    state_topic: "/homeassistant/PP"
    unit_of_measurement: "kWh"
    state_class: total
    device_class: energy
  - platform: mqtt
    name: "Power Used"
    state_topic: "/homeassistant/PU"
    unit_of_measurement: "kWh"
    state_class: total
    device_class: energy

Wymagania:

- add-on Node-Red. W konfiguracji Node-Red w sekcji npm_packages dodajemy "node-red-contrib-string", wymagany do konwersji odczytu licznika do formatu liczbowego

https://community.home-assistant.io/t/home-assistant-community-add-on-node-red/55023

- add-on Mosquitto broker

https://github.com/home-assistant/addons/blob/master/mosquitto/DOCS.md

 

Pozdrawiam

MM

 
Dodane : 31/12/2021 1:32 pm
leckimarcin
(@leckimarcin)
Senior
 

@tani_kredyt  "w sekcji npm_packages dodajemy "node-red-contrib-string""

Jak ma to wyglądać?

coś w ten deseń?

certfile: fullchain.pem
credential_secret: 
http_node:
password: ''
username: ''
http_static:
password: ''
username: ''
init_commands: []
keyfile: privkey.pem
npm_packages: [node-red-contrib-string]
ssl: false
system_packages: []
theme: default

Bo próbowałem zainstalować poleceniem npm ten pakiet (w katalogu node-red):

npm install node-red-contrib-string

Ale niestety HA pluje, że nie zna takiego polecenia npm.

 
Dodane : 31/12/2021 9:55 pm
baernie
(@baernie)
Aktywny
 

Ja tylko dodam, że próba uruchomienia skryptu od @papuutek oraz @matulekpl na nowym zaktualizowanym systemie nie udało mi się. 
Natomiast zainstalowałem selenium w ostatniej wersji 3 zamiast nowej 4 i skrypt od @papuutek działa od razu bez żadnych problemów. 

 
Dodane : 31/12/2021 10:21 pm
tani_kredyt
(@tani_kredyt)
Aktywny
 

@leckimarcin U mnie wygląda to tak z dwoma instalowanymi nodami:

npm_packages:
  - node-red-contrib-simple-message-queue
  - node-red-contrib-string
 
Dodane : 01/01/2022 5:48 am
tani_kredyt
(@tani_kredyt)
Aktywny
 

Hej, z innej beczki. Czy u wszystkich stan licznika w portalu odświeża się tylko po północy raz dziennie?

Przez to w HA sensor pokazuje produkcje i zużycie z opóźnieniem jednego dnia.

 
Dodane : 01/01/2022 7:29 am
leckimarcin
(@leckimarcin)
Senior
 

@tani_kredyt mam tak samo, gdzieś czytałem, że odczytują z liczników w nocy o 5 rano i aktualizują dopiero kolejnego dnia.

[0]}","dataType":"jsonata","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":1070,"y":280,"wires":[[]]},{"id":"5387284487d760d9","type":"change","z":"4240800d792043ac","name":"Set login and password","rules":[{"t":"set","p":"payload[\"j_username\"]","pt":"msg","to":"username","tot":"str"},{"t":"set","p":"payload[\"j_password\"]","pt":"msg","to":"password","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":170,"y":360,"wires":[["4d27868dcd99e719"]]},{"id":"55ac392044e425fc","type":"comment","z":"4240800d792043ac","name":"Set login and password","info":"","x":190,"y":400,"wires":[]},{"id":"51a55363.7d33bc","type":"server","name":"Home Assistant","addon":true}]

Są dwa miejsca do podania loginu i hasła.  Mam zamienić username i password tylko (\"j_username\"]","pt":"msg","to":"username","tot":"str"})? Czy tam gdzie jest "set login and password"?

I co z tym plikiem zrobić w ogóle? 😛

Jakąś automatyzację trzeba stworzyć? Daj printscreena z node-reda 😛

Albo tłumacz jak małemu dziecku:)

EDIT:

Skorzystałem z rozwiązania @Papuutek

To znaczy, nie szło tego zrobić na HA OS, ale przypomniało mi się, że mam moodeaudio podpięte do wieży, a że moode jest na raspbianie to tam zainstalowałem skrypt i teraz mam 3 x unknown 😛

Screenshot 20220101 150453

Skrypt mi wypluwa:

Wait...
./main.py:47: DeprecationWarning: executable_path has been deprecated, please pass in a Service object
driver = webdriver.Chrome('/usr/bin/chromedriver', options=options)
Traceback (most recent call last):
File "./main.py", line 47, in <module>
driver = webdriver.Chrome('/usr/bin/chromedriver', options=options)
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/chrome/webdriver.py", line 73, in __init__
service_log_path, service, keep_alive)
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/chromium/webdriver.py", line 99, in __init__
options=options)
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 268, in __init__
self.start_session(capabilities, browser_profile)
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 359, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 424, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/errorhandler.py", line 247, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 92
Current browser version is 78.0.3904.108 with binary path /usr/bin/chromium-browser
Stacktrace:
#0 0x000000a26618 <unknown>
#1 0x00000078c9f4 <unknown>
#2 0x0000007b1e88 <unknown>
#3 0x0000007add48 <unknown>
#4 0x0000007aac04 <unknown>
#5 0x0000007e128c <unknown>
#6 0x0000007dba14 <unknown>
#7 0x0000007b4478 <unknown>
#8 0x0000007b53a4 <unknown>
#9 0x000000a53944 <unknown>
#10 0x000000a6590c <unknown>
#11 0x000000a65550 <unknown>
#12 0x000000a66d40 <unknown>
#13 0x000000a54944 <unknown>
#14 0x000000a66fec <unknown>
#15 0x000000a4b3ac <unknown>
#16 0x000000a7e6e8 <unknown>
#17 0x000000a7e858 <unknown>
#18 0x000000a98f4c <unknown>
#19 0x000076efd494 start_thread
#20 0x000000000000 <unknown>

 Także, chyba się poddaje na dzisiaj, bo jeszcze cały rok taki będzie 😉

 
Dodane : 01/01/2022 1:09 pm
tani_kredyt
(@tani_kredyt)
Aktywny
 

Hej,

Plik trzeba importować:

Screenshot 2022 01 01 at 18.57.22

I potem trzeba wstawić login i hasło w tym nodzie:

Screenshot 2022 01 01 at 19.00.32

Pozdr

MM

 
Dodane : 01/01/2022 6:01 pm
leckimarcin
(@leckimarcin)
Senior
 

@tani_kredyt Dzięki za łopatologiczne wytłumaczenie jak to ugryźć;)

Wszystko działa jak należy:) Pozdrawiam i wszystkiego najlepszego w Nowym Roku;)

liczniki
 
Dodane : 01/01/2022 7:29 pm
Przemyslaw Wroblewski
(@lowang)
Nowy
 

cześć,

dzięki wielkie za integracje oraz inspiracje do stworzenia kolejnej 😉
@baernie pytał o scrape i to mnie natchneło do sprawdzenia tego podejścia.
Działam na hass.io gdzie nie da sie nic zainstalować dodatkowego więc chciałem aby było to jak najprostsze:

https://gist.github.com/lowang/18601a2d063a1e933fb7c6e0e97a3c7c

pozdrawiam!

 
Dodane : 02/01/2022 4:30 pm
baernie
(@baernie)
Aktywny
 

To co przesłałeś działa poprawnie w HA? 
Rozumiem, że nie poprzez wbudowanego scrape sensora w ha, tylko przez hacs należy zainstalować tego multiscrape, następnie Twój kod i będzie śmigać?

 
Dodane : 02/01/2022 4:39 pm
maciej_h
(@maciej_h)
Aktywny
 

@leckimarcin

@tani_kredyt

Niestety ja utknąłem na zaimportowaniu pliku i zmianie loginu i hasla.

Podpowiedzcie jak skłonić HA do pokazywania danych z mój licznik, (szukam i szukam i niestety nic) a HA mam od dwóch dni i potrzebuję jakiegoś sukcesu 😉

 
Dodane : 04/01/2022 7:12 pm
Przemyslaw Wroblewski
(@lowang)
Nowy
 
Dodane przez: @baernie

To co przesłałeś działa poprawnie w HA? 
Rozumiem, że nie poprzez wbudowanego scrape sensora w ha, tylko przez hacs należy zainstalować tego multiscrape, następnie Twój kod i będzie śmigać?

@baernie dokładnie tak, uaktualniłem kod w gist o obsługę on_error bo czasami strona nie chce zwrócić wyniku i dostawałem błąd w logach oraz stan unknown.
Teraz po prostu korzystam ze starej wartości licząc ze kolejne pobranie to naprawi.

 
Dodane : 04/01/2022 7:18 pm
Strona 1 / 3
Udostępnij: