Seite 1 von 1

http Abfrage mit Xpath generieren

Verfasst: 27. Jan 2021 21:39
von maddin2020
Hallo ich möchte gerne den aktuellen Rücknahmepreis einer Wertanlage täglich auslesen. Die Rule für täglich auszulesen ist kein Problem nur hänge ich bei der Abfrage selbst fest. Grundsätzlich denke ich das ich über eine http anfrage die in Kombination mit Xpath lösen sollte. Kann mir dort jemand ein Denkanstoss geben.

Hier die Seite

https://www.deka.de/privatkunden/fondsp ... 0008474511

Ich möchte den aktuellen Rücklesepreis auslesen. Der steht im HTML Code unter dem XPATH dort /html/body/div[1]/div[3]/div[1]/div/div/div[2]/div/div/div[1]/div[2]/div/div/text()

Wie bekomme ich nun den Text dort ausgelesen ?

Per HTTP Bindung hab ich die Seite einmal in den Cache abgelegt

Bank.url=https://www.deka.de/privatkunden/fondsp ... 0008474511
Bank.updateInterval=5000

Danke für eure Tips

Re: http Abfrage mit Xpath generieren

Verfasst: 27. Jan 2021 23:31
von udo1toni
Ich glaube nicht, dass Du XPath dafür missbrauchen kannst, XPath setzt ein gültiges XML Dokument voraus.

Re: http Abfrage mit Xpath generieren

Verfasst: 29. Jan 2021 22:38
von maddin2020
oh ok danke für das Feedback. Siehst du sonst eine Chance die daten in der HTML Datei auszulesen

Re: http Abfrage mit Xpath generieren

Verfasst: 31. Jan 2021 21:34
von udo1toni
Eigentlich sollte das mit REGEX ganz gut gehen. z.B. so:

Code: Alles auswählen

REGEX(.*Ausgabepreis</span>.*<div class=.item-detail.>[ \t]*(.*) EUR.*)

Re: http Abfrage mit Xpath generieren

Verfasst: 31. Jan 2021 22:42
von juschi
So gehts ganz einfach:

Code: Alles auswählen

Items:
Number deka		"Deka[%s €]"			<line>

Rules:
rule	"Deka"
when    Time cron "0 0/1 * * * ?"
then     val String deka_data = sendHttpGetRequest("https://www.tradegate.de/refresh.php?isin=DE0008474511")
	    var String deka_price = transform("JSONPATH", ".['bid']", deka_data)
	    deka.postUpdate(Float::parseFloat(String::format("%s",deka_price).replace(',','.')))
end
Müsste auf anhieb funktionieren ;)

Re: http Abfrage mit Xpath generieren

Verfasst: 31. Jan 2021 23:49
von udo1toni
Allerdings ist das eine andere Website :) aber vermutlich wird die Datenbasis auch passen. Ohne Frage ist ein gültiges JSON Objekt (oder alternativ auch XML...) zu bevorzugen, wenn es zur Verfügung steht.

Re: http Abfrage mit Xpath generieren

Verfasst: 1. Feb 2021 14:50
von juschi
Ja genau, die Quelle ist in diesem Fall Tradegate. Dort kann man jedoch so ziemlich alle Kurse abfragen. Wahrscheinlich bekommt man sogar aktuellere Werte als bei Deka. Hab in Erinnerung, dass die eh nur gegen 12 Uhr die Kurse einmal am Tag aktualisieren :D

Re: http Abfrage mit Xpath generieren

Verfasst: 1. Feb 2021 21:20
von udo1toni
Womit mal wieder bewiesen wäre, dass eine gute Lösung eines Problems manchmal schon vor der ursprünglichen Aufgabenstellung ansetzen muss. :)