PyGame: einbinden Webseite als Frame o.ä.?

Hier werden alle anderen GUI-Toolkits sowie Spezial-Toolkits wie Spiele-Engines behandelt.
Antworten
Octeon
User
Beiträge: 14
Registriert: Sonntag 23. September 2018, 08:08

Hallo Forum,

gibt es die Möglichkeit, eine Webseite (deren Inhalt sich selbständig in Intervallen neu lädt) in einem PyGame-Fenster darzustellen?

Gruß
Max
__deets__
User
Beiträge: 14536
Registriert: Mittwoch 14. Oktober 2015, 14:29

Nicht wirklich. Theoretisch kann man natürlich einen headless Browser in eine Buffer Rendern lassen, und den dann darstellen. Praktisch ist das viehisch aufwändig.

Vielleicht erzählst du mal was dein Problem eigentlich ist, ggf findet sich dann eine andere Lösung.
Octeon
User
Beiträge: 14
Registriert: Sonntag 23. September 2018, 08:08

Ich möchte gerne ein kleines TFT-Display an einen RasPi hängen, auf dem ich verschiedene Daten (Temperaturen usw.) als Werte und Kurven darstellen möchte. Zusätzlich soll in einem kleinen Frame die Bedien(web)seite meinen Solarladers dargestellt werden.
__deets__
User
Beiträge: 14536
Registriert: Mittwoch 14. Oktober 2015, 14:29

Wie klein soll das denn alles werden?

Wie dem auch sei, du kannst du das Browserfenster über dem anderen darstellen. Dazu musst du mit den Eigenschaften der X Windows spielen, siehe zb hier: https://unix.stackexchange.com/question ... l-keyboard

Ein Weg das für den Browser zu machen sollte zb mit Qt und dessen WebKit View sein. Ggf geht das aber auch nur durch Konfiguration.

Oder du benutzt einen tiling window manager ohne rand, der Browser ist dann das untere rechte Fenster zb, und die 3 anderen bemalst du selbst & kannst da ja auch problemlos für Kontinuität sorgen.
__deets__
User
Beiträge: 14536
Registriert: Mittwoch 14. Oktober 2015, 14:29

Oh, und mir ist gerade noch eine Möglichkeit eingefallen: alles im Browser machen. Also Python & Pygame wegwerfen, und nur in HTML und zb mit iframes arbeiten.
Sirius3
User
Beiträge: 17747
Registriert: Sonntag 21. Oktober 2012, 17:20

Der umgekehrte Weg ist vielleicht einfacher: Stelle doch Deine Daten einfach auf einer Webseite dar.

@__deets__: dazu muß man ja nicht gleich Python wegwerfen, sondern sich nur einen kleinen Server programmieren.
Antworten