NEWS
Parser Adapter bekommt keinen Wert
-
@Sven710 sagte in Parser Adapter bekommt keinen Wert:
Hier möchte ich gerne die Außentemperatur auslesen
Welche?
Wo steht der Wert, (die Werte) die du ausgegeben haben möchtest? (welches Ergebnis müsste herauskommen?)
Die HTML-Seite ist für mich nicht selbsterklärend. Anscheinend wird hier eine "Maske" aufgebaut und dann befüllt. Eine "echte" Verknüpfung "Außentemperatur <-> WERT scheint nicht zu existierenIch habe es gerade mit regex101.com versucht und bekomme 6 Treffer und zwar mit zwei verschiedenen Werten.
@Sven710 sagte in Parser Adapter bekommt keinen Wert:
ich bekomme den Wert einfach nicht ausgelesen.
Welche Einstellungen hast du denn in der Konfiguration des RegEx im Adapter?
@Sven710 sagte in Parser Adapter bekommt keinen Wert:
Gibt es eine oder Regex Anleitung auf Deutsch?
Hapert es vollständig mit dem Englischen, oder gibt es spezielle Probleme.
RegEx101.com gibt da sehr detaillierte Infos -
Homoran
zum 1. Ich hätte gerne die Außentemperatur Welche mit 19,2 angegeben ist, und zwar hier :
<div class="widget_contents"> <table> <tbody> <tr> <td class="label">Outside Temperature</td> <td class="data">19,2°C</td>
hier wären die Einstellungen :
Und ja Englisch kann ich schon, aber Deutsch wäre einfacher daher die Frage, Englisch ist von verstehen her mühsamer.
-
@Sven710 sagte in Parser Adapter bekommt keinen Wert:
Ich hätte gerne die Außentemperatur Welche mit 19,2 angegeben ist,
Dann darfst du nicht das regex so wählen, dass du ein Minus voranstellst.
@Sven710 sagte in Parser Adapter bekommt keinen Wert:
Dadurch bekommst du nur negative Werte
Hiermit bekommst du natürlich wesentlich mehr Ergebnisse (incl. der negativen)
[^\S]([^(]\S\d*,\d*)
regex101.com sagt dazu:
1st Capturing Group (-\d*[.|,]\d*)
- matches the character - literally (case sensitive)
\d* matches a digit (equal to [0-9])- Quantifier — Matches between zero and unlimited times, as many times as possible, giving back as needed (greedy)
Match a single character present in the list below [.|,]
.|, matches a single character in the list .|, (case sensitive)
\d* matches a digit (equal to [0-9]) - Quantifier — Matches between zero and unlimited times, as many times as possible, giving back as needed (greedy)
das - führt dazu dass du das Zeichen - (so wie es da steht) findest
- Quantifier — Matches between zero and unlimited times, as many times as possible, giving back as needed (greedy)
-
@Homoran said in Parser Adapter bekommt keinen Wert:
[^(]\S\d*,\d*)
Also mit dem Code:
[^\S]([^(]\S\d*,\d*)
Bekomme ich leider auch nichts angezeigt.
-
@Sven710 sagte in Parser Adapter bekommt keinen Wert:
[^\S]([^(]\S\d*,\d*)
Mach mal bitte einen Screenshot des Regex Edit in dem Adapter
Du darfst "outside temperatur .." nicht im Regex angeben
-
@Sven710 sagte in Parser Adapter bekommt keinen Wert:
ch hätte gerne die Außentemperatur Welche mit 19,2 angegeben ist,
kann es sein, dass in dem Quewlltext, den du gepostet hattest der Wert nicht 19,2 sondern 19,7 war?
-
@Homoran
Nein das war schon 19,2 , 19,7 war zu dem Zeitpunkt die Tageshöchsttemperatur -
@Homoran
Das habe ich nun mal weggelassen jetzt bekomme ich auch einen Wert aber nicht den richtigen. -
Hat einiges gedauert, dann habe ich die 19.2 gefunden:
Hiermit klappt es
Outside Temperature<\/td>[^>]*>(\d*,\d*)
@Sven710 sagte in Parser Adapter bekommt keinen Wert:
aber nicht den richtigen.
Da war ich noch von dem 19.7 ausgegangen
-
@Homoran
Jetzt funktioniert es beim Regex richtig aber beim Parser leider noch nicht, holt sich immer noch den falschen Wert ab. -
@Sven710 sagte in Parser Adapter bekommt keinen Wert:
@Homoran
Jetzt funktioniert es beim Regex richtig aber beim Parser leider noch nicht, holt sich immer noch den falschen Wert ab.Nope!
Siehe meinen Screenshot -
@Homoran
Besten Dank hat Funktioniert nach einem Neustart warum auch immer. Vielen Dank hab da jetzt schon etliche Stunden gerätselt.