Falownik BBECO - wy...
 
Powiadomienia
Wyczyść wszystko

Domoticz Falownik BBECO - wyodrębnianie danych po WIFI (scraping)

leckimarcin
(@leckimarcin)
Początkujący

Witam,

posiadam falownik bbeco, który podobno ma "bebechy" sofara.

Po zalogowaniu się na adres IP falownika, można podejrzeć moc chwilową (webdata_now_p) oraz dzisiejszą (webdata_today_e)

webdata now p
webdata today e

Zmodyfikowałem skrypt, ale niestety wyświetla tylko 0. Czy ktoś może nakierować mnie co jeszcze muszę zmienić? Ewentualnie podrzucić jakieś materiały, które nauczą mnie ekstrakcji danych w skryptach shell:)

domoticz

Załączam mój skrypt:

#!/usr/bin/env bash

username=admin
password=admin #Your admin password if different than default
inverter=192.168.2.108 # Change to your inverter's IP/hostname
curlOpts="-s -o - --user ${username}:${password}"

poll(){
curl ${curlOpts}    http://${inverter}/index_cn.html.html    2>&1 |\ #/status.html
egrep '^var webdata_now_p' |\ #var webdata_(now)
sed 's/var webdata_//' |\
sed 's/[^0-9]//g' |\
sed 's/\r$//g'
}

output=$(poll)
if [[ ! -z "${output}" ]]; then
echo -e "${output}"
curl -s --connect-timeout 2 --max-time 5 "http8082/json.htm?type=command&param=udevice&idx=45&nvalue=0&svalue=$output" #YOUR_$
else
echo "FAIL"
fi

EDIT:

coś namodziłem w pythonie i na innych stronach działa, więc w następnym tygodniu jak będę miał czas to spróbuję już pobrać dane bezpośrednio w falownika:

#!/usr/bin/env python

from bs4 import BeautifulSoup
import requests

url='http://192.168.2.108/index_cn.html'
page = requests.get(url).text
soup = BeautifulSoup(page,  "html.parser")
klasy_div=soup.findAll('div', class_='lab_r2')
print(klasy_div[7].text)
Cytuj
Autor tematu Dodane : 19/07/2021 10:44 pm
Tagi tematu
isom
 isom
(@isom)
Prezes Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20

Moim zdaniem podstawowy powód to 

curl -s --connect-timeout 2 --max-time 5 "http8082/json.htm?type=command&param=udevice&idx=45&nvalue=0&svalue=$output" #YOUR_$

Tu powinien być pełny json czyli IP domoticz z portem 

OdpowiedzCytuj
Dodane : 20/07/2021 7:46 pm
Udostępnij: