neiser / wemportal-scripts

Scripts for https://www.wemportal.com/Web/
1 stars 2 forks source link

Memory leak #2

Open dm82m opened 4 years ago

dm82m commented 4 years ago

Moin,

Aktuell zerlegt mir das Script meinen Raspberry. Gibt irgend ein Problem auf der wemportal Seite was dazu führt, dass das Script immer mehr Speicher braucht und den Raspberry in die Knie zwingt.

Idee wie man das fixen kann? Sind Evtl zu viele Retries drin?

Gruß Dirk

Hardy62wo commented 4 years ago

Meine automatisierten Abfragen bei dem Weishauptserver gehen ca seit dem 8.4.2020 auch ins Leere.Das Ding ist anscheinend im "HomeOffice" und schlecht gemanaged!Man sieht auch im Portal unter https://www.wemportal.com/Web/Default.aspx das die Zeit nicht mehr stimmt und nix mehr angenommen wird.Viele Grüße GerhardAm 10.04.20, 16:22 schrieb Dirk notifications@github.com:

Moin, Aktuell zerlegt mir das Script meinen Raspberry. Gibt irgend ein Problem auf der wemportal Seite was dazu führt, dass das Script immer mehr Speicher braucht und den Raspberry in die Knie zwingt. Idee wie man das fixen kann? Sind Evtl zu viele Retries drin? Gruß Dirk —You are receiving this because you are subscribed to this thread.Reply to this email directly, view it on GitHub, or unsubscribe.

dm82m commented 4 years ago

Bei mir war das Verhalten, dass sich dieses "Refresh" Rädchen dauerhaft gedreht hat und ich quasi keine Daten mehr bekommen habe. Habe das jetzt an den Support gemeldet und die haben das Problem gefunden und behoben. Ich bekomme wieder Daten. Wo allerdings das Problem lag weiß ich nicht.

Ich habe ebenfalls bei mir im Script jetzt noch einen Abbruch eingebaut und zwar in etwa so:

def wait_until_page_loaded(driver):
    timeout = time.time() + 60*2   # 2 minutes from now
    while True:
        ...
        if (time.time() > timeout):
            print("Data got not loaded within 2 minutes, stopping it!")
            break

Dadurch dass das Script quasi endlos läuft in dem Fall den ich hatte, wurde es dann bei mir in Home Assistant mehrfach gestartet und hat im Endeffekt zu einem Systemcrash geführt... Das passiert mir zumindest an der Stelle jetzt nicht mehr.

dm82m commented 4 years ago

Und noch ein Hinweis: ich habe immer wieder den Fall, dass mir das Portal keine aktuelle Daten liefert. Das geht teilweise 1-2 Stunden so. Dazu stehe ich mit Weishaupt in Kontakt. Heutige Rückmeldung war: "Wir sind dabei, das Problem zu lösen, nur scheint die Ursache sehr komplex zu sein und so wie es ausschaut wird es noch etwas dauern, bis wir eine endgültige Lösung gefunden haben.".

dm82m commented 4 years ago

die scheinen tatsächlich etwas zu verändern. ich bekomme jetzt immerhin mal eine fehlermeldung, wenn das auslesen nicht funktioniert:

image

@neiser vmtl. könnte man das entsprechend auch abfangen im script...

neiser commented 3 years ago

Hallo @dm82m und @Hardy62wo

Sorry für die sehr verspätete Antwort. Ich habe auch gewisse Stabilitätsprobleme bemerkt, aber noch keine Zeit, sie genauer zu untersuchen. Gibt's vielleicht bei Weishaupt die Möglichkeit, mal nach einer besser zu automatisierenden API zu fragen? Die Lösung dieses Skriptes hier ist leider sehr dämlich mit Selenium.

dm82m commented 3 years ago

Weishaupt baut wohl an einer KNX Integration, die bringt mir aber nichts. Eine API soll es meines wissens nach nicht geben. Allerdings kann ich euch folgendes empfehlen: https://github.com/erikkastelec/hass-WEM-Portal

Brandneues Plugin für Weishaupt in Homeassistant. Setzt nicht auf Selenium sondern Scrapy und scheint bisher echt gut und deutlich weniger Ressourcen hungrig zu laufen.