Seite 1 von 1

HTML; Livetiming-Webseite auslesen

Verfasst: Dienstag 4. Juni 2019, 10:31
von Hurga
Hallo,

für eine eigene Darstellung (private Datei) möchte ich die Webseite https://livetiming.azurewebsites.net/events/50/results
auslesen.
Mir geht es um die dargestellte (und regelmäßig aktualisierte) Tabelle mit den darin enthaltenen Werten.
Wenn ich mir den Quelltext anschaue, sind diese Werte aber gar nicht darin enthalten. Bin nicht so firm in dem Kram, denke aber mal, dass das etwas mit den Scripten zu tun hat, die dort ziemlich am Ende aufgeführt werden.

Hat jemand eine Idee, wie das trotzdem klappen könnte?
Bin ziemlicher Anfänger auf dem Raspi, daher bitte gaaaaaaanz langsam erklären. :wink:

Im Zweifel würde sogar folgendes gehen:
TAB im Browser aktivieren, über STRG+A alles auswählen, mit STRG+C in die Zwischenablage kopieren, geöffnete Kalkulationstabelle (Libre Office) aktivieren und mit STRG+V die Inhalte einfügen. Nur sollte das Ganze dann eben alle 30 Sekunden automatisch ablaufen. Nicht elegant - ich weiß - und auch nicht so ganz einfach, aber... in der Not frisst der Teufel Fliegen.
In der Libre Office-Kalkulationstabelle kann man auch einen Link zur Seite als Datenabfrage einfügen. Das funktioniert aber (wahrscheinlich wohl auch wg. der Scripte) leider nicht. Wenn da jemand eine Idee hat.... immer gerne.

Wie auch immer... vielen Dank im Voraus und viele Grüße

Hurga

Re: HTML; Livetiming-Webseite auslesen

Verfasst: Dienstag 4. Juni 2019, 10:49
von __deets__
Die bauen einen Websocket auf. Das kannst du mit dem Debugger im Browser sehen, und dann im Network-Tab. Dann sehen die Daten so aus:

Code: Alles auswählen

{"PID":"0","RECNUM":"0","SND":"0","RCV":"0","VER":"2","EXPORTID":"50","HEATTYPE":"R","SESSION":"3900101104","NROFINTERMEDIATETIMES":"8","TRACKNAME":"Nürburgring","TRACKLENGTH":"25378","S1L":"2537","S2L":"2537","S3L":"2537","S4L":"2537","S5L":"2537","S6L":"2537","S7L":"2537","S8L":"3806","S9L":"3813","APL":"0","BEST":[[0,"00.000",0,"0"],[0,"00.000",0,"0"],[0,"00.000",0,"0"],[0,"00.000",0,"0"],[0,"00.000",0,"0"],[0,"00.000",0,"0"],[0,"00.000",0,"0"],[0,"00.000",0,"0"],[0,"00.000",0,"0"],[0,"00.000",0,"0"]],"TRACKSTATE":"0","HEATNUMBER":"1","CUP":"24h Qualifikationsrennen","HEAT":"Testrace","TOD":"1559555161592","RESULT":[{"POSITION":"1","RANK":"1","CLASSRANK":"1","CHG":"0","STNR":"1","ETA":"1557407633089","LAPS":"3","ETATOD":"k6:30:38.793","NAME":"Lietz/Makowiecki/Pilet/Tandy","CLASSNAME":"SP 9","CAR":"Porsche 911 GT3 R","ISQUA":"1","GAP":"----LAP 3","INT":"7:16.737","LASTLAPTIME":"1:35.914","FASTESTLAP":"1:35.914","PITSTOPCOUNT":"0","PITSUM":"000000.000","LASTINTERMEDIATENUMBER":"16","LASTIMTIME":"1559555161589","S1TIME":"","S1SPEED":"0.0","S2TIME":"","S2SPEED":"0.0","S3TIME":"","S3SPEED":"0.0","S4TIME":"","S4SPEED":"0.0","S5TIME":"","S5SPEED":"0.0","S6TIME":"","S6SPEED":"0.0","S7TIME":"","S7SPEED":"0.0","S8TIME":"","S8SPEED":"0.0","S9TIME":"","S9SPEED":"0.0","TOPSPEED":"0.0","TEAM":"Manthey-Racing","TPST":"","LLT":"3","LLC":"3"}]}
Du musst also den websocket selbst abfragen, dazu kannst du mal googeln wie das geht mit Python.

Eine Alternative besteht darin, Selenium zu benutzen, um einen Browser fernzusteuern. Auch das kann man mit Python machen.

Re: HTML; Livetiming-Webseite auslesen

Verfasst: Dienstag 4. Juni 2019, 10:59
von Hurga
Cool. Danke! Muss ich mal ausprobieren. Komme ich aber heute wohl nicht mehr zu.