Moin.
Als Anfänger hatte ich mich an das httpmod gewagt. Ich wollte gerne die Wirtschaftsdtn des Kalenders von https://www.boerse-go.de/service/termine au meiner fhem seite integrieren.
define PM HTTPMOD https://www.boerse-go.de/service/termine 60
attr PM event-on-update-reading .*
attr PM userattr reading01Name reading01Regex reading02Name reading02Regex reading03Name reading03Regex reading04Name reading04Regex reading05Name reading05Regex reading06Name reading06Regex reading07Name reading07Regex reading08Name reading08Regex reading09Name reading09Regex readingOMap
ergibt dann...
Internals:
BUSY 0
CHANGED
DEF https://www.boerse-go.de/service/termine 60
Interval 60
LASTSEND 1466196801.77792
MainURL https://www.boerse-go.de/service/termine
NAME PM
NR 105
STATE ???
TRIGGERTIME 1466196861.77711
TRIGGERTIME_FMT 2016-06-17 22:54:21
TYPE HTTPMOD
addr https://www.boerse-go.de:443
buf HTTP/1.1 200 OK
Server: nginx
Date: Fri, 17 Jun 2016 20:53:22 GMT
Content-Type: text/html; charset=UTF-8
Connection: close
X-Backend: www08
X-Varnish: 1777117695 1777108437
Via: 1.1 varnish
X-Hits: 1
X-Age: 41
X-Orig-Cache-Control: public,max-age=0,s-maxage=120
X-UA-Device: pc
Cache-Control: public,max-age=0,s-maxage=0
Vary: X-Requested-With,Accept-Encoding
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Terminübersicht | Service | Boerse-Go.de</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Language" content="de-DE" />
<script type="text/javascript">
....
mich interessiert davon...
<em>Terminübersicht</em>
</div>
</li>
</ul>
<div style="clear: left"></div>
</div>
<div style="clear: left"></div>
<div id="content" class="clearfix">
<div id="maincontent" class="clearfix">
<h1>Terminübersicht</h1>
Region auswählen:
<select size="1" onchange="changeRegion(this.value);">
<option value="" selected="selected">Komplettübersicht</option>
<option value="EUROPE">Termine Europa</option>
<option value="NAMERICA">Termine Nordamerika</option>
<option value="ASIA">Termine Asien / Pazifik</option>
<option value="EMERGING_MARKETS">Termine BRIC / Emerging Markets</option>
</select>
<h4>Freitag, 17. Juni 2016</h4>
<ul class="worldtime clearfix" style="margin-bottom: 30px;">
<li class="local"><span>Local</span><span id="worldtime_clock_local">00:00:00</span></li>
<li class="la"><span>Los Angeles</span><span id="worldtime_clock_LA">00:00:00</span></li>
<li class="ny"><span>New York</span><span id="worldtime_clock_NY">00:00:00</span></li>
<li class="ld"><span>London</span><span id="worldtime_clock_LON">00:00:00</span></li>
<li class="fr"><span>Frankfurt</span><span id="worldtime_clock_FFM">00:00:00</span></li>
<li class="tk"><span>Tokio</span><span id="worldtime_clock_TOK">00:00:00</span></li>
<li class="nz"><span>New Zealand</span><span id="worldtime_clock_NZ">00:00:00</span></li>
</ul>
<a href="https://news.guidants.com/#!Termine/Index" target="_blank" class="banner-calender">
</a>
<script type="text/javascript">
<!--
var times = { worldtime_clock_local: 7200,
worldtime_clock_LA: -25200,
worldtime_clock_NY: -14400,
worldtime_clock_LON: 3600,
worldtime_clock_FFM: 7200,
worldtime_clock_TOK: 32400,
worldtime_clock_NZ: 43200};
function updateClock ( )
{
var currentTime = new Date();
var currentYear = currentTime.getUTCFullYear();
var currentMonth = currentTime.getUTCMonth();
var currentDay = currentTime.getUTCDate();
var currentHours = currentTime.getUTCHours( );
var currentMinutes = currentTime.getUTCMinutes( );
var currentSeconds = currentTime.getUTCSeconds( );
var localtime = null;
var currentHoursFormatted = '';
var currentMinutesFormatted = '';
var currentSecondsFormatted = '';
for( clock in times ) {
var utcTime = Date.UTC(currentYear, currentMonth, currentDay, currentHours, currentMinutes, currentSeconds);
utcTime += times[clock] * 1000;
localtime = new Date(utcTime);
currentHoursFormatted = (localtime.getUTCHours() < 10 ? '0' : '') + localtime.getUTCHours();
currentMinutesFormatted = (localtime.getUTCMinutes() < 10 ? '0' : '') + localtime.getUTCMinutes();
currentSecondsFormatted = (localtime.getUTCSeconds() < 10 ? '0' : '') + localtime.getUTCSeconds();
document.getElementById(clock).firstChild.nodeValue = currentHoursFormatted + ':' + currentMinutesFormatted + ':' + currentSecondsFormatted;
}
}
function changeRegion(region) {
var regex = new RegExp(/(\/day_timestamp\/[\d.]+)/);
var newUrl = '/service/termine';
if (regex.test(location.href)) {
newUrl += RegExp.$1;
}
newUrl += region != '' ? '/region/' + region : '';
location.href = newUrl;
}
updateClock(); setInterval('updateClock()', 1000 )
// -->
</script>
<div class="takenotice">
<h2>Hinweise</h2>
<p >
Dreifacher Verfallstermin an den Terminbörsen (Hexensabbat) </p>
</div>
<h2>Wirtschaftsdaten</h2>
<table class="termine">
<thead>
<tr>
<th style="width: 40px;">Zeit</th>
<th></th>
<th style="width: 25px;"></th>
<th></th>
<th style="width: 30px">Aktuell</th>
<th style="width: 30px">Prognose</th>
<th style="width: 30px">Zuletzt</th>
</tr>
</thead>
<tbody>
<tr style="background: #EEE;">
<td>
00:30 </td>
<td class="impact" style="width: 20px">
</td>
<td class="flag">
<img src="/api/v1/country/93.image"/>
</td>
<td>
NZ: Business Manufacturing Index Mai </td>
<td class="alignright">
57,10 </td>
<td class="alignright"></td>
<td class="alignright">56,60</td>
</tr>
<tr style="background: #EEE;">
<td>
10:00 </td>
<td class="impact" style="width: 20px">
</td>
<td class="flag">
<img src="/api/v1/country/33.image"/>
</td>
<td>
IT: Handelsbilanzsaldo April in Mrd € </td>
<td class="alignright">
4,52 </td>
<td class="alignright">5,95</td>
<td class="alignright">5,37</td>
</tr>
<tr style="background: #EEE;">
<td>
10:00 </td>
<td class="impact" style="width: 20px">
</td>
<td class="flag">
<img src="/api/v1/country/542.image"/>
</td>
<td>
EWU: EZB-Leistungsbilanzsaldo April (saisonbereinigt) in Mrd € </td>
<td class="alignright">
36,20 </td>
<td class="alignright">24,70</td>
<td class="alignright">26,30</td>
</tr>
<tr style="background: #EEE;">
<td>
12:00 </td>
<td class="impact" style="width: 20px">
</td>
<td class="flag">
<img src="/api/v1/country/23.image"/>
</td>
<td>
DE: Verfall Futures und Optionen (STOXX-Familie) </td>
<td class="alignright">
</td>
<td class="alignright"></td>
<td class="alignright"></td>
</tr>
<tr style="background: #EEE;">
<td>
13:00 </td>
<td class="impact" style="width: 20px">
</td>
<td class="flag">
...
<img src="/api/v1/country/23.image"/>
</td>
<td>
DE: Verfall Indexfutures und -optionen (Eurex) </td>
<td class="alignright">
</td>
<td class="alignright"></td>
<td class="alignright"></td>
</tr>
<tr style="background: #EEE;">
<td>
14:30 </td>
<td class="impact" style="width: 20px">
</td>
<td class="flag">
<img src="/api/v1/country/3.image"/>
</td>
<td>
US: Baugenehmigungen Mai (annualisiert) in Tsd </td>
<td class="alignright">
1.138,00 </td>
<td class="alignright">1.150,00</td>
<td class="alignright">1.116,00</td>
</tr>
<tr style="background: #EEE;">
<td>
14:30 </td>
<td class="impact" style="width: 20px">
</td>
<td class="flag">
<img src="/api/v1/country/3.image"/>
</td>
<td>
US: Baubeginne Mai (annualisiert) in Tsd </td>
<td class="alignright">
1.164,00 </td>
<td class="alignright">1.150,00</td>
<td class="alignright">1.167,00</td>
</tr>
<tr style="background: #EEE;">
<td>
14:30 </td>
<td class="impact" style="width: 20px">
</td>
<td class="flag">
<img src="/api/v1/country/1.image"/>
</td>
<td>
CA: Verbraucherpreise Mai m/m </td>
<td class="alignright">
0,40 </td>
<td class="alignright">0,50</td>
<td class="alignright">0,30</td>
</tr>
<tr style="background: #EEE;">
<td>
17:30 </td>
<td class="impact" style="width: 20px">
</td>
<td class="flag">
<img src="/api/v1/country/23.image"/>
</td>
<td>
DE: Verfall Aktienoptionen (Eurex) </td>
<td class="alignright">
</td>
<td class="alignright"></td>
<td class="alignright"></td>
</tr>
<tr style="background: #EEE;">
<td>
21:30 </td>
<td class="impact" style="width: 20px">
</td>
<td class="flag">
<img src="/api/v1/country/3.image"/>
</td>
<td>
US: Commitments of Traders (COT) Report </td>
<td class="alignright">
</td>
<td class="alignright"></td>
<td class="alignright"></td>
</tr>
</tbody>
</table>
<div class="bannerright clearfix">
<div class="left">
<h2>Quartalszahlen</h2>
</div>
<div class="right adSpaceBorder">
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- BoerseGo.de Service Termine Medium Rectangle 300x250 -->
<ins class="adsbygoogle"
style="display:inline-block;width:300px;height:250px"
data-ad-client="ca-pub-8329107337874444"
data-ad-slot="9921708214"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</div>
</div>
<h2>Hauptversammlungen</h2>
<ul class="bulletlist">
<li>
<p>
<a href="/profil/aktie/instrumentId/137627">Accu Holding AG</a>
</p>
</li>
<li>
<p>
<a href="/profil/aktie/instrumentId/126227">FRoSTA AG</a>
</p>
</li>
<li>
<p>
<a href="/profil/aktie/instrumentId/21146634">ISC Business Technology AG</a>
</p>
</li>
<li>
<p>
<a href="/profil/aktie/instrumentId/1521111">SPARTA AG</a>
</p>
</li>
<li>
<p>
<a href="/profil/aktie/instrumentId/119832">TAG Immobilien AG</a>
</p>
</li>
<li>
<p>
<a href="/profil/aktie/instrumentId/122774">USU Software AG</a>
</p>
</li>
<li>
<p>
<a href="/profil/aktie/instrumentId/18180944">windeln.de AG</a>
</p>
</li>
</ul>
</div>
<div id="sidecontent1" class="clearfix">
<div id="calendar">
<h3 id="picker">Termine</h3>
<link rel="stylesheet" type="text/css" href="/js/calendar/calendar-boersego.css" />
<script type="text/javascript" src="/js/calendar/calendar.js"></script>
<script type="text/javascript" src="/js/calendar/lang/calendar-de.js"></script>
<script type="text/javascript">
function flatSelected(cal, date) {
if (cal.dateClicked) {
document.location.href = '/service/termine/day_timestamp/'+(cal.date.getTime()/1000);
}
}
var cal = new Calendar(0, null, flatSelected);
cal.weekNumbers = false;
//cal.setDateFormat("%A, %B %e");
cal.create(document.getElementById('calendar'));
cal.setDate(new Date(1466196761000));
cal.show();
</script>
</div>
<div id="siteinfo">
<h3 class="infoheading">Seiteninformation</h3>
<ul class="blocklist">
<li><a href="https://www.boerse-go.ag/wir" target="_blank">Unternehmen</a></li>
<li><a href="/service/agb">AGB</a></li>
<li><a href="/service/datenschutz">Datenschutzhinweise</a></li>
<li><a href="/service/haftungsausschluss">Haftung</a></li>
<li><a href="/">Home</a></li>
<li><a href="/service/impressum">Impressum</a></li>
<li><a href="https://www.boerse-go.ag/karriere/jobs" target="_blank">Jobs</a></li>
<li><a href="http://www.godmode-trader.de/hilfe/feedback" target="_blank">Kontakt</a></li>
<li><a href="https://www.boerse-go.ag/b2b/mediacenter" target=_blank>Media</a></li>
<li><a href="/service/verbot_kursmanipulation">Verbot der Kursmanipulation</a></li>
</ul>
</div>
</div>
</div>
<div id="angebote">
<ul style="width:90%;">
<li class="copyright">Alle Angaben ohne Gewähr © 2016 <a href="https://www.boerse-go.ag/" target="_blank">BörseGo AG</a></li>
<li>Für die Richtigkeit der dargestellten Kurs-, Stamm- und Marktdaten wird keine Haftung übernommen.
Vergleichen Sie die hier wiedergegebenen Daten mit denen Ihrer Bank oder Ihres Brokers, bevor Sie eine Anlage tätigen.</li>
<li class="netzwerk">
<a target="_blank" title="Aktien" href="http://www.godmode-trader.de">Aktien und Aktienkurse</a>,
<a target="_blank" href="http://www.godmode-trader.de/Aktien-kaufen/">Aktien kaufen</a>,
<a target="_blank" href="http://www.godmode-trader.de/Gold/Goldpreis">Goldpreis</a>,
<a target="_blank" href="http://www.boerse-go.de/themen/rohstoffe">Rohstoffe</a>
</li>
<li><b>Rechtliches</b>:
<a rel="nofollow" href="/service/agb">AGB</a>,
<a rel="nofollow" href="/service/datenschutz">Datenschutzhinweise</a>,
<a rel="nofollow" href="/service/haftungsausschluss">Haftung</a>,
<a rel="nofollow" href="/service/impressum">Impressum</a>,
<a rel="nofollow" href="/service/zeitverzoegerung">Informationen zur Zeitverzögerung der Kursdaten, Börsenbedingungen und Copyright</a>
</li>
<li>
<a rel="nofollow" target=_blank href="https://www.boerse-go.ag/wir">Unternehmen</a>,
<a rel="nofollow" target=_blank href="https://www.boerse-go.ag/karriere/jobs">Jobs</a>,
<a rel="nofollow" target=_blank href="http://www.godmode-trader.de/hilfe/feedback">Kontakt</a>,
<a rel="nofollow" target=_blank href="https://www.boerse-go.ag/b2b/mediacenter">Media</a>
</li>
</ul>
</div>
</div>
</div>
<!-- Notes -->
<script type="text/javascript" src="/js/base64.js"></script>
<script type="text/javascript" src="/js/utils.js"></script>
<script type="text/javascript">
//var onelineInterval = setInterval("heightAdjust('one-line',30);",1000);
setTimeout("heightAdjust('one-line',30);",1000);
</script>
<div id="mouseFollower" style="position: absolute; top: -50px; left: -50px; z-index: 9999999"><img src="/themes/default/media/content/banner/bnpparibas_cursor_fx.gif" /></div>
<div id="adContainer" style="display: none">
<link href="/js/core/ads/ads.css" rel="stylesheet" type="text/css" media="all" />
<script src="/js/core/ads/ads.js" type="text/javascript"></script>
<script type="text/javascript" src="//imagesrv.adition.com/js/adition.js"></script>
<div id="adContainer_bigsize">
<script type="text/javascript" src="//ad2.adfarm1.adition.com/js?wp_id=48661"></script>
</div>
<div id="adContainer_sky">
<script type="text/javascript" src="//ad2.adfarm1.adition.com/js?wp_id=48662"></script>
</div>
<div id="adContainer_background">
<script type="text/javascript" src="//ad2.adfarm1.adition.com/js?wp_id=36457"></script>
</div>
<script type="text/javascript">
adOptions.foregroundNodes = ["site_bar","cookieContainer","siteContainer"];
// Q'n'D Verzögerung wegen AdForm-Bannern:
setTimeout(function () {
dispatchAds(["bigsize","sky","background"]);
}, 1000);
</script>
</div>
<span id="kickstartChecker"></span>
<div id="trackerContainer">
<script>
// Set to the same value as the web property used on the site
var gaProperty = 'UA-17413992-1';
// Disable tracking if the opt-out cookie exists.
var disableStr = 'ga-disable-' + gaProperty;
if (document.cookie.indexOf(disableStr + '=true') > -1) {
window[disableStr] = true;
}
// Opt-out function
function gaOptout() {
document.cookie = disableStr + '=true; expires=Thu, 31 Dec 2099 23:59:59 UTC; path=/';
window[disableStr] = true;
}
</script>
<script type="text/javascript">
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-17413992-1', '.boerse-go.de');
ga('set', 'anonymizeIp', true);
ga('send', 'pageview');
</script>
</div>
<span style="display:none" id="allDebug">0.18662190437317</span>
<div class="notification" id="bgo-notification">
<a href="#" onClick="closeNotification();">
<svg version="1.1" id="Ebene_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 10 10" enable-background="new 0 0 10 10" xml:space="preserve" class="notification-close">
<line fill="none" stroke="#03B4CE" stroke-width="0.9288" stroke-miterlimit="10" x1="0.4" y1="0.4" x2="9.6" y2="9.6"/>
<line fill="none" stroke="#03B4CE" stroke-width="0.9288" stroke-miterlimit="10" x1="9.6" y1="0.4" x2="0.4" y2="9.6"/>
</svg>
</a>
<a href="https://www.boerse-go.ag/wir?utm_source=boersego.de&utm_medium=boersego.de-layer" target="_blank">
<img src="/themes/default/media/content/bgo-ag_link.jpg" alt="Guidants" />
<div class="notification-description">
<p>Sie wollten zur Unternehmenswebsite der BörseGo AG – <span>hier entlang</span></p>
</div>
</a>
</div>
</body>
</html>
code 200
conn
data
displayurl https://www.boerse-go.de/service/termine
header
host www.boerse-go.de
httpheader HTTP/1.1 200 OK
Server: nginx
Date: Fri, 17 Jun 2016 20:53:22 GMT
Content-Type: text/html; charset=UTF-8
Connection: close
X-Backend: www08
X-Varnish: 1777117695 1777108437
Via: 1.1 varnish
X-Hits: 1
X-Age: 41
X-Orig-Cache-Control: public,max-age=0,s-maxage=120
X-UA-Device: pc
Cache-Control: public,max-age=0,s-maxage=0
Vary: X-Requested-With,Accept-Encoding
httpversion 1.0
hu_blocking 0
hu_filecount 188
ignoreredirects 0
loglevel 4
path /service/termine
protocol https
redirects 0
timeout 2
url https://www.boerse-go.de/service/termine
value 0
QUEUE:
Readings:
Request:
data
header
ignoreredirects 0
retryCount 0
type update
url https://www.boerse-go.de/service/termine
value 0
Sslargs:
Attributes:
event-on-update-reading .*
userattr reading01Name reading01Regex reading02Name reading02Regex reading03Name reading03Regex reading04Name reading04Regex reading05Name reading05Regex reading06Name reading06Regex reading07Name reading07Regex reading08Name reading08Regex reading09Name reading09Regex readingOMap
vermisse das Problem / Frage... ;)
Dito ;-)
Und: du hast wohl den "Code-Ende-tag" vergessen bzw. fehlt dieser...
...macht das LEsen deutlich einfacher!
Kannst du auch per "Ändern-Knopf" nachträglich korrigieren...
Und dann wie gesagt: das Problem/die Frage stellen.
Und soweit ich weiß musst du für jede Webanfrage/Server ein separates httpmod modul definieren...
Aus der Antwort können dann in verschiedenen Readings mittels verschiedener regexen die gewünschten Infos rausgezogen werden.
Vielleicht hilft das:
https://regex101.com/ (https://regex101.com/)
Gruß, Joachim
Meine Frage war, wie ich diese WirtschaftskalenderTermine ausgelesen bekomme. Was kann ich mit der externen reg Webseite tun ?
Hallo,
per httpmod http://www.fhemwiki.de/wiki/HTTPMOD (http://www.fhemwiki.de/wiki/HTTPMOD) kannst du "Webseiten" abfragen.
Eine Antwort hast du ja bereits gepostet??!!
Diese Antwort kannst du mittels regex (regular expression) "auswerten" und das "Ergebnis" der regex in einem Reading des definierten HTTPMOD Moduls "anzeigen" lassen...
Die externe Webseite ist ein "regex-Prüfprogramm", d.h. du kannst das empfangene Ergebnis der Webabfrage (oder was immer du mittels regex "auswerten" willst) rein kopieren und deine regex "formulieren" und es wird dir angezeigt, was deine regex aus dem "Ergebnis der Webabfrage" (oder was immer du per regex bearbeiten willst) angezeigt, also kannst du prüfen, ob die regex das liefert was du brauchst/willst.
Gruß, Joachim
Bin mit dieser Seite überfordert. Da ich nicht weiss was ich wo einfügen muss um letztlich die regexe herauszubekommen. Hatte den Text aus Fhem unter buf in den Test String Teil der regex webseite kopiert, kann aber kein Ergebnis erkennen.
Hallo,
den "HTML-Sourcecode" der Seite welche die dich interessierenden Daten enthält in das Fenster "insert you teststring here" kopieren...
...und bei "insert your regular expresion here" die regex kopieren bzw. formulieren mit der du denkst die dich interessierenden Daten zu "erhalten".
regex "filtert" sozusagen das "Ergebnis" der Webseitenabfrage und gibt (wenn richtig formuliert) das gewünschte zurück.
Auf der rechten Seite siehst du immer live was die regex gerade liefert...
D.h. du musst zuerst mal das empfangene HTML-Dokument nach den Dingen durchsuchen (menschliches Auge etc. ;-) ) die du in dem HTTPMOD modul sehen willst.
Dann mal lesen was regex sind usw. und dann überlegen, was wohl formuliert werden müsste um evtl. an die gewünschtne Daten zu kommen...
Und das kannst du dann mit der angegebenen Webseite testen und korrigieren...
Also bevor du nicht weißt was du haben willst und was wie in etwa regex funktioniert kannst du nur noch folgendes tun:
hier den HTML-Sourcecode der dich interessierenden Webseite posten (hast du wohl bereits getan) schreiben welche Daten dich interessieren und dann wünschen, bitten, beten, dass dir jemand die entsprechenden regex(en) formuliert...
Und vielleicht sogar den define des HTTPMOD moduls dass du brauchst nennt...
Gruß, Joachim
Äh, die Seite spuckt keine regex aus, sondern zeigt dir was deine regex rausfiltert...
Also wie geschrieben:
erst schauen was interessiert
regex "lernen"
eine regex basteln von der du glaubst dass sie das macht was du willst
mit angegebener seite testen
HTTPMOD modul in fhem definieren
...
habe das was unter buf stand reinkopiert und oben mal reading01Regex eingegeben, not matched. Übrigens testweise auch mal mit dem was Pollenflug liefert. Auch da gabs keinen treffer.
Bearbeite doch bitte mal deinen ersten Beitrag und setz alles was nicht zum Text gehört in Code-Tags.
Das kann doch kein Mensch ohne 80"-Monitor scrollen.
Es soll auch Leute geben die das Forum mit einem Tablet besuchen - versuch mal deinen Beitrag auf einem Tablet zu lesen (von einem SmartPhone mal ganz abgesehen).
Du solltest dich mal dem Punkt regex lernen widmen...
Und auch mal den Link bzgl. httpmod...
Klar, dass die regex aus den Beispielen bei der Antwort auf deine Webanfrage nichts finden weil die für eine ganz andere Webseitenanfrage (Pollen oder Wetter oder oder oder) geschrieben wurden.
Also noch mal: was aus der geposteten Antwort deiner Webanfrage interessiert dich?
Dafür musst du eine regex "basteln" (lassen falls sich jemand findet) und dann kannst du das httpmod Modul definieren...
was ein Krampf... der Editor hier nimmt nicht den code. also habe ich ihn gekürzt auf das was relevant wäre.
Also ich hab mir die Webseite mal angeschaut, ich wüsste nicht was daran interessant ist, dort laufen ja nur die Uhrzeiten verschiedener Orte/Börsen...
Mit "was interessiert dich" war schin gemeint was genau dich an Information aus der Web (HTTP/HTML) Antwort der von dir eingestellten URL https://www.boerse-go.de/service/termine (https://www.boerse-go.de/service/termine) interessiert.
Nur dann kann man evtl, mit der regex etc. helfen...
Ich bin jetzt nicht der regex Experte (aber für das was ich bislang wollte bin ich mit der "Prüf-Webseite [mein Link] immer gut zurecht gekommen) aber vielleicht hilft folgendes, dass du verstehst wie es funktioniert, also prinzipiell.
define test HTTPMOD https://www.boerse-go.de/service/termine 60
attr test userattr reading01Name reading01Regex
attr test reading01Name Time_LA
attr test reading01Regex worldtime_clock_LA:.{5,}(.\d\d\d\d\d)
liefert was hinter 'worldtime_clock_LA' kommt als Reading welches 'Time_LA' heißt.
d.h. was hinter reading01Regex steht 'worldtime_clock_LA:.{5,}(.\d\d\d\d\d)' "filtert" aus der Web/HTTP-Antwort der aufgerufenen URL die Zahl hinter 'worldtime_clock_LA:' aus.
D.h. noch mal: du musst halt herausfinden WAS dich an/in der Antwort des Web-Aufrufs interessiert und dann versuchen eine regex zu formulieren, die genau das "trifft".
Mehr kann ich dir (zum aktuellen Stand) nicht weiter helfen...
Ansonsten mal versuchen die Beispiele (wiki / allerdings vollständig, also immer passender URL-Aufruf und passende regex/Reading-Formulierungen) und auch die Commandref bzgl. HTTPMOD mal lesen...
Und wie gesagt: google oder Bücher bzgl. regex (regular expression) "studieren"...
Oder halt (wie ich meist) mit dem "regex-checker" probieren bis das gewünschte "gefunden" wird.
Auf der rechten Seite gibt es auch Hinweise was welche Teile "matcht" usw.
Gruß und viel Erfolg, Joachim
Erstens kann ich mich den Ratschlägen nur anschließen: Bitte etwas mehr an den eigenen Grundlagen arbeiten, bevor man sich komplexe Aufgaben stellt.
Hier z.B.https://wiki.selfhtml.org/wiki/Perl/Regul%C3%A4re_Ausdr%C3%BCcke
Zweitens: Bei richtig komplexen Seiten wird man um eine ordentliche DOM-Adressierung per XPath nicht herumkommen.
LG
pah
Es geht um den Teil, der unter Wirtschaftsdaten steht. Sprich welche Daten sind heute jeweils interessant bzw. liegen an.
Zeit, Aktuell, Prognose, Zuletzt
Scheint aber wohl nicht ganz so einfach zu sein.
Doch, ist wirklich einfach.
LG
pah
ZitatScheint aber wohl nicht ganz so einfach zu sein.
Mit diesen Angaben:
Zitat
Es geht um den Teil, der unter Wirtschaftsdaten steht. Sprich welche Daten sind heute jeweils interessant bzw. liegen an.
Zeit, Aktuell, Prognose, Zuletzt
ist es praktisch unlösbar...
...für dich und andere erst recht.
Im Forum wird meist folgendermaßen geholfen: Links zu Tipps, Denkanstöße, Hinweis auf (grobe) Fehler, Unterstützung bei Problemstellung, Fehlerbehebung in Modulen (sofern sich das "Problem" als "Fehler" herausstellt), ...
Erstere Dinge inkl. Beispiel bezogen auf dein Problem (gut es waren sicher nciht die Daten die dich interessieren aber ich weiß ja auch nicht was dich GENAU interessiert) hast du bekommen...
Dann ist es an dir/dem geholfen werden soll sich selbst (ein wenig) damit zu beschäftigen und zumindest so weit kommen, dass die letzten Punkte "Hinweis auf grobe Fehler" und "Unterstützung bei Problemstellung" für uns im Forum machbar sind.
Dazu braucht es aber genaue Problem/Fehlerbeschreibungen!
Und nicht: hier ist der Sourcecode der Webseite bzw. das list von meinem schon mal (unbrauchbar, weil keine regex Formulierung) angelegtem HTTPMOD-Modul und mich interessieren hier da so ein paar Daten...
Selbst wenn sich dem Thread hier jemand widmen würde, der (deutlich besser als ich) regex/X-Path/HTTPMOD-Modul kennt, kann er mit deinen Angaben nicht helfen...
...und manchmal wird auch wirklich (fast) der letztendliche "Code" im Forum geliefert (ist aber eher die Ausnahme)...
...aber mit den gelieferten Infos würde das ja nicht mal gehen, selbst (wie erneut gesagt) wenn jemand wollte...
Falls HTTPMOD-Modul zu kompliziert für dich sein sollte und du (offenbar) keine (große) Lust hast dich selber damit zu beschäftigen evtl. mal schauen (suchfunktion/google/...), ob es nicht bereits ein Wirtschafts-irgendwas-Modul gibt etc.
Gruß, Joachim