NEWS
Parser Adapter bekommt keinen Wert
-
Ich habe ein Problem mit dem Adapter, ich bekomme den Wert einfach nicht ausgelesen. Hat jemand eine Ahnung was ich hier falsch mache? Gibt es eine oder Regex Anleitung auf Deutsch?
ich möchte gerne von folgender Website einige Daten auslesen:<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Sven's Wetterstation </title> <link rel="icon" type="image/png" href="favicon.ico" /> <link rel="stylesheet" type="text/css" href="seasons.css"/> <script src="seasons.js"></script> </head> <body onload="setup();"> <div id="title_bar"> <div id="title"> <h1 class="page_title">Sven's Wetterstation </h1> <p class="lastupdate">20.06.2019 10:20:00</p> </div> <div id="rss_link"><a href="rss.xml">RSS</a></div> <div id="reports"> Monthly Reports: <select name="reports" onchange="openTabularFile(value)"> <option value="2018-04">2018-04</option> <option value="2018-05">2018-05</option> <option value="2018-06">2018-06</option> <option value="2018-07">2018-07</option> <option value="2018-08">2018-08</option> <option value="2018-09">2018-09</option> <option value="2018-10">2018-10</option> <option value="2018-11">2018-11</option> <option value="2018-12">2018-12</option> <option value="2019-01">2019-01</option> <option value="2019-02">2019-02</option> <option value="2019-03">2019-03</option> <option value="2019-04">2019-04</option> <option value="2019-05">2019-05</option> <option value="2019-06">2019-06</option> <option selected>- Select Month -</option> </select> <br/> Yearly Reports: <select name="reports" onchange="openTabularFile(value)"> <option value="2018">2018</option> <option value="2019">2019</option> <option selected>- Select Year -</option> </select> <br/> </div> </div> <div id="contents"> <div id="widget_group"> <div id='current_widget' class="widget"> <div class="widget_title"> Current Conditions <a class="widget_control" onclick="toggle_widget('current')">♦</a> </div> <div class="widget_contents"> <table> <tbody> <tr> <td class="label">Outside Temperature</td> <td class="data">19,2°C</td> </tr> <tr> <td class="label">Heat Index</td> <td class="data">19,2°C</td> </tr> <tr> <td class="label">Wind Chill</td> <td class="data">19,2°C</td> </tr> <tr> <td class="label">Dew Point</td> <td class="data">15,7°C</td> </tr> <tr> <td class="label">Humidity</td> <td class="data">80%</td> </tr> <tr> <td class="label">Barometer</td> <td class="data">1010,1 mbar (0,7)</td> </tr> <tr> <td class="label">Wind</td> <td class="data">3 km/h SW (218°)</td> </tr> <tr> <td class="label">Rain Rate</td> <td class="data">0,00 cm/hr</td> </tr> <tr> <td class="label">Rain Today</td> <td class="data">0,03 cm</td> </tr> <tr> <td class="label">Inside Temperature</td> <td class="data">24,3°C</td> </tr> </tbody> </table> </div> </div> <div id="sunmoon_widget" class="widget"> <div class="widget_title"> <a href="celestial.html">Celestial</a> <a class="widget_control" onclick="toggle_widget('sunmoon')">♦</a> </div> <div class="widget_contents"> <div id="celestial_summary"> <table class="celestial"> <tr> <td class="label">Sunrise</td> <td class="data">05:06:25</td> </tr> <tr> <td class="label">Sunset</td> <td class="data">21:49:14</td> </tr> <tr> <td class="label">Moon Phase</td> <td class="data">Waning gibbous<br/> 89%</td> </tr> </table> </div> </div> </div> <div id='hilo_widget' class="widget"> <div class="widget_title"> <a href="statistics.html">High/Low</a> <a class="widget_control" onclick="toggle_widget('hilo')">♦</a> </div> <div class="widget_contents"> <table> <tbody> <tr> <td></td> <th> <br/>Today</th> <th class="hilo_week"> <br/>Week</th> <th class="hilo_month"> <br/>Month</th> <th class="hilo_year"> <a onclick="toggle_rainyear()"> <br/>Year</a> </th> <th class="hilo_rainyear"> <a onclick="toggle_rainyear()">Rain<br/>Year</a> </th> <td></td> </tr> <tr> <td class="label">Outside Temperature</td> <td class="data new_row hilo_day"> <span title="09:39:14"> 19,7</span><br/> <span title="04:18:53"> 15,1</span> </td> <td class="data new_row hilo_week"> <span title="13:27:21 (Mittwoch)"> 31,9</span><br/> <span title="05:24:10 (Montag)"> 10,2</span> </td> <td class="data new_row hilo_month"> <span title="02.06.2019 17:33:27"> 32,5</span><br/> <span title="07.06.2019 04:47:26"> 7,2</span> </td> <td class="data new_row hilo_year"> <span title="02.06.2019 17:33:27"> 32,5</span><br/> <span title="20.01.2019 08:55:31"> -8,9</span> </td> <td class="data new_row hilo_rainyear"> <span title="02.06.2019 17:33:27"> 32,5</span><br/> <span title="20.01.2019 08:55:31"> -8,9</span> </td> <td class="units">°C</td> </tr> <tr> <td class="label">Heat Index</td> <td class="data new_row hilo_day"> <span title="09:39:14" class="hival"> 19,7</span> </td> <td class="data new_row hilo_week"> <span title="13:00:09 (Mittwoch)" class="hival"> 32,1</span> </td> <td class="data new_row hilo_month"> <span title="02.06.2019 17:33:27" class="hival"> 32,5</span> </td> <td class="data new_row hilo_year"> <span title="02.06.2019 17:33:27" class="hival"> 32,5</span> </td> <td class="data new_row hilo_rainyear"> <span title="02.06.2019 17:33:27" class="hival"> 32,5</span> </td> <td class="units">°C</td> </tr> <tr> <td class="label">Wind Chill</td> <td class="data new_row hilo_day"> <span title="04:18:53" class="loval"> 15,1</span> </td> <td class="data new_row hilo_week"> <span title="05:24:10 (Montag)" class="loval"> 10,2</span> </td> <td class="data new_row hilo_month"> <span title="07.06.2019 04:47:26" class="loval"> 7,2</span> </td> <td class="data new_row hilo_year"> <span title="24.01.2019 07:36:35" class="loval"> -9,7</span> </td> <td class="data new_row hilo_rainyear"> <span title="24.01.2019 07:36:35" class="loval"> -9,7</span> </td> <td class="units">°C</td> </tr> <tr> <td class="label">Dew Point</td> <td class="data new_row hilo_day"> <span title="09:17:03"> 17,0</span><br/> <span title="05:05:00"> 14,9</span> </td> <td class="data new_row hilo_week"> <span title="13:51:31 (Mittwoch)"> 21,5</span><br/> <span title="05:24:10 (Montag)"> 10,0</span> </td> <td class="data new_row hilo_month"> <span title="19.06.2019 13:51:31"> 21,5</span><br/> <span title="08.06.2019 08:58:46"> 5,9</span> </td> <td class="data new_row hilo_year"> <span title="19.06.2019 13:51:31"> 21,5</span><br/> <span title="22.01.2019 08:37:09"> -9,8</span> </td> <td class="data new_row hilo_rainyear"> <span title="19.06.2019 13:51:31"> 21,5</span><br/> <span title="22.01.2019 08:37:09"> -9,8</span> </td> <td class="units">°C</td> </tr> <tr> <td class="label">Humidity</td> <td class="data new_row hilo_day"> <span title="01:43:44"> 99</span><br/> <span title="10:06:26"> 79</span> </td> <td class="data new_row hilo_week"> <span title="03:50:56 (Montag)"> 99</span><br/> <span title="13:20:17 (Mittwoch)"> 35</span> </td> <td class="data new_row hilo_month"> <span title="01.06.2019 05:43:24"> 99</span><br/> <span title="02.06.2019 17:24:22"> 29</span> </td> <td class="data new_row hilo_year"> <span title="01.01.2019 11:34:47"> 99</span><br/> <span title="22.04.2019 15:58:42"> 18</span> </td> <td class="data new_row hilo_rainyear"> <span title="01.01.2019 11:34:47"> 99</span><br/> <span title="22.04.2019 15:58:42"> 18</span> </td> <td class="units">%</td> </tr> <tr> <td class="label">Barometer</td> <td class="data new_row hilo_day"> <span title="10:06:26"> 1010,2</span><br/> <span title="01:08:29"> 1007,4</span> </td> <td class="data new_row hilo_week"> <span title="08:14:26 (Montag)"> 1021,4</span><br/> <span title="20:36:32 (Mittwoch)"> 1005,2</span> </td> <td class="data new_row hilo_month"> <span title="09.06.2019 08:23:00"> 1024,1</span><br/> <span title="06.06.2019 02:24:20"> 1000,7</span> </td> <td class="data new_row hilo_year"> <span title="23.02.2019 09:33:50"> 1043,2</span><br/> <span title="27.01.2019 14:39:57"> 985,0</span> </td> <td class="data new_row hilo_rainyear"> <span title="23.02.2019 09:33:50"> 1043,2</span><br/> <span title="27.01.2019 14:39:57"> 985,0</span> </td> <td class="units"> mbar</td> </tr> <tr> <td class="label">Rain</td> <td class="data new_row hilo_day"> 0,03</td> <td class="data new_row hilo_week"> 0,78</td> <td class="data new_row hilo_month"> 4,56</td> <td class="data new_row hilo_year"> 47,37</td> <td class="data new_row hilo_rainyear"> 47,37</td> <td class="units"> cm</td> </tr> <tr> <td class="label">Rain Rate</td> <td class="data new_row hilo_day"> <span title="00:44:19"> 0,12</span> </td> <td class="data new_row hilo_week"> <span title="13:58:34 (Mittwoch)"> 1,80</span> </td> <td class="data new_row hilo_month"> <span title="19.06.2019 13:58:34"> 1,80</span> </td> <td class="data new_row hilo_year"> <span title="08.01.2019 13:28:01"> 6,36</span> </td> <td class="data new_row hilo_rainyear"> <span title="08.01.2019 13:28:01"> 6,36</span> </td> <td class="units"> cm/hr</td> </tr> <tr> <td class="label">Wind Max</td> <td class="data new_row hilo_day"> <span title="09:54:20"> 16</span><br/> 270 </td> <td class="data new_row hilo_week"> <span title="21:23:52 (Mittwoch)"> 36</span><br/> 225 </td> <td class="data new_row hilo_month"> <span title="08.06.2019 10:33:26"> 43</span><br/> 180 </td> <td class="data new_row hilo_year"> <span title="17.03.2019 15:13:23"> 73</span><br/> 270 </td> <td class="data new_row hilo_rainyear"> <span title="17.03.2019 15:13:23"> 73</span><br/> 270 </td> <td class="units"> km/h<br/> ° </td> </tr> <tr> <td class="label">Wind Average</td> <td class="data new_row hilo_day"> 1</td> <td class="data new_row hilo_week"> 1</td> <td class="data new_row hilo_month"> 2</td> <td class="data new_row hilo_year"> 4</td> <td class="data new_row hilo_rainyear"> 4</td> <td class="units"> km/h</td> </tr> <tr> <td class="label">Wind RMS</td> <td class="data new_row hilo_day"> 1</td> <td class="data new_row hilo_week"> 2</td> <td class="data new_row hilo_month"> 3</td> <td class="data new_row hilo_year"> 5</td> <td class="data new_row hilo_rainyear"> 5</td> <td class="units"> km/h</td> </tr> <tr> <td class="label"> Vector Average<br/> Average Direction </td> <td class="data new_row hilo_day"> 1<br/> 214 </td> <td class="data new_row hilo_week"> 1<br/> 146 </td> <td class="data new_row hilo_month"> 1<br/> 194 </td> <td class="data new_row hilo_year"> 2<br/> 227 </td> <td class="data new_row hilo_rainyear"> 2<br/> 227 </td> <td class="units"> km/h<br/> ° </td> </tr> <tr> <td class="label">Inside Temperature</td> <td class="data new_row hilo_day"> <span title="00:01:00"> 27,7</span><br/> <span title="05:29:25"> 24,1</span> </td> <td class="data new_row hilo_week"> <span title="19:36:04 (Mittwoch)"> 29,8</span><br/> <span title="05:05:00 (Montag)"> 22,0</span> </td> <td class="data new_row hilo_month"> <span title="02.06.2019 19:40:00"> 30,6</span><br/> <span title="09.06.2019 05:14:32"> 22,0</span> </td> <td class="data new_row hilo_year"> <span title="02.06.2019 19:40:00"> 30,6</span><br/> <span title="16.01.2019 04:50:47"> 18,7</span> </td> <td class="data new_row hilo_rainyear"> <span title="02.06.2019 19:40:00"> 30,6</span><br/> <span title="16.01.2019 04:50:47"> 18,7</span> </td> <td class="units">°C</td> </tr> </tbody> </table> </div> </div> <div id='sensors_widget' class="widget"> <div class="widget_title"> <a href="telemetry.html">Sensor Status</a> <a class="widget_control" onclick="toggle_widget('sensors')">♦</a> </div> <div class="widget_contents"> <table> <tr><th>Connectivity</th><th></th></tr> <tr> <td class="label">Signal Quality</td> <td class="data">100%</td> </tr> <tr><th>Battery Status</th><th></th></tr> <tr> <td class="label">Outside Temperature Battery</td> <td class="data"><span class="status_ok">OK</span> </td> </tr> </table> </div> </div> <div id='about_widget' class="widget"> <div class="widget_title"> About this weather station <a class="widget_control" onclick="toggle_widget('about')">♦</a> </div> <div class="widget_contents"> <table> <tr> <td class="label">Hardware</td> <td class="data">WH1080</td> </tr> <tr> <td class="label">Latitude</td> <td class="data">51° 53.38' N</td> </tr> <tr> <td class="label">Longitude</td> <td class="data">008° 25.12' E</td> </tr> <tr> <td class="label">Altitude</td> <td class="data">83 meters</td> </tr> <tr> <td class="label">Server uptime</td> <td class="data">2 days, 15 hours, 52 minutes</td> </tr> <tr> <td class="label">WeeWX uptime</td> <td class="data">2 days, 15 hours, 52 minutes</td> </tr> <tr> <td class="label">WeeWX version</td> <td class="data">3.9.1</td> </tr> </table> </div> </div> </div> <div id="plot_group"> <div id="history_widget" class="widget"> <div id="plot_title" class="widget_title">History: <a class="button_selected" id="button_history_day" onclick="choose_history('day')">Day</a> <a class="button" id="button_history_week" onclick="choose_history('week')">Week</a> <a class="button" id="button_history_month" onclick="choose_history('month')">Month</a> <a class="button" id="button_history_year" onclick="choose_history('year')">Year</a> </div> <div id="history_day" class="plot_container"> <img src="daybarometer.png" alt="Barometer"/> <img src="daytempdew.png" alt="Outside Temperature" /> <img src="daytempfeel.png" alt="feel" /> <img src="dayhum.png" alt="Humidity" /> <img src="daywind.png" alt="Wind Speed" /> <img src="daywinddir.png" alt="Wind Direction" /> <img src="daywindvec.png" alt="Wind Vector" /> <img src="dayrain.png" alt="Rain" /> <img src="daytempin.png" alt="Inside Temperature" /> <img src="dayrx.png" alt="Signal Quality"/> </div> <div id="history_week" class="plot_container" style="display:none"> <img src="weekbarometer.png" alt="Barometer"/> <img src="weektempdew.png" alt="Outside Temperature" /> <img src="weektempfeel.png" alt="feel" /> <img src="weekhum.png" alt="Humidity" /> <img src="weekwind.png" alt="Wind Speed" /> <img src="weekwinddir.png" alt="Wind Direction" /> <img src="weekwindvec.png" alt="Wind Vector" /> <img src="weekrain.png" alt="Rain" /> <img src="weektempin.png" alt="Inside Temperature" /> <img src="weekrx.png" alt="Signal Quality"/> </div> <div id="history_month" class="plot_container" style="display:none"> <img src="monthbarometer.png" alt="Barometer"/> <img src="monthtempdew.png" alt="Outside Temperature" /> <img src="monthtempfeel.png" alt="feel" /> <img src="monthhum.png" alt="Humidity" /> <img src="monthwind.png" alt="Wind Speed" /> <img src="monthwinddir.png" alt="Wind Direction" /> <img src="monthwindvec.png" alt="Wind Vector" /> <img src="monthrain.png" alt="Rain" /> <img src="monthtempin.png" alt="Inside Temperature" /> <img src="monthrx.png" alt="Signal Quality"/> </div> <div id="history_year" class="plot_container" style="display:none"> <img src="yearbarometer.png" alt="Barometer"/> <img src="yeartempdew.png" alt="Outside Temperature" /> <img src="yeartempfeel.png" alt="feel" /> <img src="yearhum.png" alt="Humidity" /> <img src="yearwind.png" alt="Wind Speed" /> <img src="yearwinddir.png" alt="Wind Direction" /> <img src="yearwindvec.png" alt="Wind Vector" /> <img src="yearrain.png" alt="Rain" /> <img src="yeartempin.png" alt="Inside Temperature" /> <img src="yearrx.png" alt="Signal Quality"/> </div> </div> </div> </div> <p class="footnote"> This station is controlled by <a href="http://weewx.com/">WeeWX</a>, an experimental weather software system written in Python. </p> </body> </html>
Hier möchte ich gerne die Außentemperatur auslesen zur Zeit versuche ich es mit folgender REGEX : Outside Temperature..[^\d^-](-\d*[.|,]\d*)
Leider klappt dieses nicht wo liegt der Denkfehler?
Vielen Dank -
@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.