Hauptmenü

HTTPMOD Regex

Begonnen von Edi77, 25 November 2023, 23:20:19

Vorheriges Thema - Nächstes Thema

Edi77

Hallo,

Komme da im Moment nicht weiter laut regex101 funktioniert das reading, aber httpmod liefert keinen wert.

defmod ITSec_Alerts60s HTTPMOD https://www.sicherheitstacho.eu/#/en/tacho 30
attr ITSec_Alerts60s event-on-change-reading ITSec_Alerts60s
attr ITSec_Alerts60s reading01Name ITSec_Alerts60s
attr ITSec_Alerts60s reading01OExpr $val =~ s/\,/./g;; $val
attr ITSec_Alerts60s reading01Regex class="stats-segment stats-segment-big"><div data-v-37e85ed5="" class="stats-number big">(\d+\,\d+)
attr ITSec_Alerts60s room IT Security
attr ITSec_Alerts60s stateFormat ITSec_Alerts60s

Vielleicht hat hier jemand eine Idee? Ist reading01OExpr was falsch?
Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

betateilchen

Hast Du mal geprüft, was beim Aufruf der URL überhaupt in Deinem HTTPMOD device ankommt?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Edi77

Das ist die Antwort wenn ich auf verbose 5 gehe.
Wie könnt ich es den sonst noch testen ?

2023.11.26 18:46:01 5: ITSec_Alerts60s: set called with reread
2023.11.26 18:46:01 4: ITSec_Alerts60s: GetUpdate called (reread)
2023.11.26 18:46:01 5: ITSec_Alerts60s: AddToQueue adds type update to URL https://www.sicherheitstacho.eu/#/en/tacho, no data, no headers, retry 0, initial queue len: 0
2023.11.26 18:46:01 5: ITSec_Alerts60s: HandleSendQueue called from AddToSendQueue, qlen = 1
2023.11.26 18:46:01 4: ITSec_Alerts60s: HandleSendQueue sends update with timeout 2 to https://www.sicherheitstacho.eu/#/en/tacho, No Data, No Header
2023.11.26 18:46:02 5: ITSec_Alerts60s: ReadCallback called from __ANON__
2023.11.26 18:46:02 4: ITSec_Alerts60s: Read callback: request type was update retry 0,
header: HTTP/1.1 200 OK
Date: Sun, 26 Nov 2023 17:46:02 GMT
Content-Type: text/html
Connection: close
Content-Encoding: gzip
Etag: W/"65253dca-1af"
Last-Modified: Tue, 10 Oct 2023 12:04:26 GMT
X-Frame-Options: sameorigin
Server: elb, body length 431
2023.11.26 18:46:02 5: ITSec_Alerts60s: Read callback: body
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    <link rel="icon" href="/favicon.svg">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Sicherheitstacho</title>
    <script type="module" crossorigin src="/assets/index-6203f76d.js"></script>
    <link rel="stylesheet" href="/assets/index-c8bece45.css">
  </head>
  <body>
    <div id="app"></div>
   
  </body>
</html>

2023.11.26 18:46:02 4: ITSec_Alerts60s: BodyDecode is not decoding the response body (charset not found, bodyDecode defaults to none)
2023.11.26 18:46:02 5: ITSec_Alerts60s: GetCookies is looking for Cookies
2023.11.26 18:46:02 5: ITSec_Alerts60s: ExtractSid called, context reading, num unknown
2023.11.26 18:46:02 4: ITSec_Alerts60s: checking for redirects, code=200, ignore=0
2023.11.26 18:46:02 4: ITSec_Alerts60s: no redirects to handle
2023.11.26 18:46:02 5: ITSec_Alerts60s: Read callback sets LAST_REQUEST to update
2023.11.26 18:46:02 5: ITSec_Alerts60s: CheckAuth decided no authentication required
2023.11.26 18:46:02 5: ITSec_Alerts60s: Read starts parsing response to update with defined readings: 01
2023.11.26 18:46:02 5: ITSec_Alerts60s: ExtractReading ITSec_Alerts60s with regex /(?^:class="stats-segment stats-segment-big"><div data-v-37e85ed5="" class="stats-number big">(\d+\,\d+))/...
2023.11.26 18:46:02 5: ITSec_Alerts60s: ExtractReading ITSec_Alerts60s did not match
2023.11.26 18:46:02 4: ITSec_Alerts60s: Read response to update didn't match any Reading
2023.11.26 18:46:02 5: ITSec_Alerts60s: HandleSendQueue called from ReadCallback, qlen = 0
2023.11.26 18:46:02 5: ITSec_Alerts60s: HandleSendQueue found no usable entry in queue
Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

betateilchen

Wie Du siehst, kommt der Wert überhaupt nicht in HTTPMOD an.
Der Anbieter der Seite möchte halt nur richtige Browser haben, ansonsten liefert er keinen Content aus.

Was ich immer sage: das was bei einem Seitenaufruf in einem Browser ankommt, und vermeintlich im dortigen Seitenquelltext problemlos funktioniert, muss noch lange nicht in HTTPMOD ankommen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Edi77

Schade.
Nur mal ne doofe Frage, als was meldet sich den httpmod beim Webserver?
Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

betateilchen

[26/Nov/2023:20:30:11 +0100] "GET /status.php HTTP/1.0" 200 4558 "-" "fhem"
als "fhem"  ;D
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!