Ich versuche nun schon seit Tagen den Kurswert eines 100 Gramm Goldbarrens mit Scrape auszulesen. Leider scheitern alle meine Versuche. Ich habe es bisher nur geschafft, auf der Seite https://Goldpreis.de die Werte aller
aufgeführten Barren anzuzeigen. Sie auf dem Dashboard nicht gerade gut aus.
Folgenden Code habe ich in Scrape eingetragen.
Code
body > div.container > div:nth-child(2) > div.col-md-4 > section.box_sidebarpreise > table:nth-child(4)
Ich würde mich freuen, wenn einer mir ein Beispiel geben könnte, wie ich die einzelnen Werte splitten kann, falls dies überhaupt möglich ist.
Hi, du könntest bestimmt mit einem Template die gewünschte Position aus dem Sensor ziehen. Dazu muss man dann z.B. den Text beschneiden, also bei EUR100 g anfangen und bis zum nächsten Leerzeichen ausschneiden.
Teile bitte deinen Code vom Sensor, dann kann besser geholfen werden.
So könnte das Template aussehen, muss dann unten zum angelegtem Sensor hinzugefügt werden. Durch split('EUR100 g') und split(' ') wird der Text bis zum nächsten Leerzeichen nach 100g ausgeschnitten.
value_template: >-
{% set text = value.split('EUR100 g')[-1].split(' ')[0] %}
{{ text }}
Eigentlich auch eine gute Idee, dass aus der Tabelle zu extrahieren, denke aber mit td.text-right span wird die ganze Zelle und damit wieder der gesamte Text danach ausgegeben. Aber ein Versuch wäre es Wert.
Nee, es wird nicht der ganze folgende Text angezeigt sondern nur der Rest der Tabellenzeile und das ist in diesem Fall der gewünschte „Wert“!
Ich nutze das hier schon eine ganze Weile, nur nicht für so ein „paar Gramm“ sondern gleich mal für das „Kilo“ → Klotzen statt kleckern! bzw. Wunschdenken!
Servus zusammen,
habe mich extra wegen diesem Thema hier angemeldet:)
Es geht mir nämlich auch um Goldpreise in HA.
Alles was man da aktuell über scrape liest, hat mir leider nicht
weiter geholfen und auch mit den Angaben hier im Post, kann ich es aktuell nicht rekonstruieren.
Läuft das denn so noch bei @baerny
vielleicht hat sich da in den letzten Monaten aber auch wieder was geändert.
Wenn es läuft, wie geanu sehen Deine scrape Einträge denn aus?
Danke für kurze Hilfestellung
Läuft bei mir recht gut, ich hab lediglich bei einigen Werten ( z.B. Gold 50 gr barren, American Eagle ) das Problem, das da irgendwann kommt, nicht verfügbar. Muss dann halt eine andere Quelle suchen. Insgesamt bin ich zufrieden.
na das klingt doch super.
ich habe das alles genau so eingegeben, wie @Dr.Big es geschrieben hat,
läuft trotzdem nicht.
irgendwo ist noch ein Fehler an dieser Stelle
tr:has(td:contains('250 g')) td.text-right span
ich hätte gerne einen Preis für 100g Barren.
Wenn ich irgend ein Ergebnis bekomme egal ob 50g oder 250g kann ich das ja umrechnen, es kommt aber gar nichts an …
EDIT:
hat jetzt funktioniert.
Man darf keine Einheit angeben, ich hatte da € eingetragen.
Besten Dank für Eure Hilfe
jetzt wo die Kiste läuft denkt man ja gleich über Optimierungen nach.
Also diese Seite goldpreis.de ist das ein Händler?
falls nicht wäre es bestimmt sinnvoller, die Preise eines Händlers zu verwenden, denn das ist dann ja auch das, was man am Ende bezahlen muss (also inkl. mark-up und Versand)
zB von hier …
EDIT:
um das Datenvolumen nicht unnötig aufzublähen würde ich die Abfrage mal auf alle 5 Min. begrenzen, aber wo gibt man das ein?