Seite 1 von 1

Thoony

Verfasst: Montag 28. Juli 2025, 08:29
von Maenni_71
Hallo zusammen
Vorweg: Ich bin blutiger Python-Anfänger. Ich habe VBA-Programmierkenntnisse, aber das ist schon eine Weile her.

Mein Problem ist, dass ich ein Skript habe, das ich nicht zum Laufen bringe. Ich habe Thoony und auch alle nötigen Pakete installiert.

from dash import Dash, html
app = Dash(__name__)
app.layout = html.Div("Dash funktioniert!")
if __name__ == "__main__":
app.run(debug=True)


">>> %Run -c $EDITOR_CONTENT
Dash is running on http://127.0.0.1:8050/
* Serving Flask app '__main__'
* Debug mode: on
OK
"


Wenn ich das Script starte und den Browser öffne, steht da nur "Wird geladen....."

Kann mir eine weiterhelfen? Vielen Dank im Voraus.

Re: Thoony

Verfasst: Dienstag 29. Juli 2025, 05:17
von Sirius3
Thoony interagiert mit den gestarteten Pythonprogrammen auf exotische Weise. Da kann es zu seltsamen Verhalten kommen. Starte Dein Programm von einer Konsole (Eingabeaufforderung) aus.

Re: Thoony

Verfasst: Dienstag 29. Juli 2025, 05:40
von Maenni_71
Vielen Dank für die Hilfe.
Fast das gleiche Problem in der Eingabeaufforderung. Die Webseite ist nicht erreichbar.

Muss ich da eventuell noch einen Webserver mitlaufen lassen?

Re: Thoony

Verfasst: Dienstag 29. Juli 2025, 14:26
von __blackjack__
Kann ich nachvollziehen. Da passiert einfach nix. Der Browser wartet auf eine Antwort, bekommt aber keine.

Re: Thoony

Verfasst: Dienstag 29. Juli 2025, 17:09
von nezzcarth
Du musst (zum lokalen Testen) keinen Webserver einrichten, die App ist selbst der Webserver. Bei mir funktioniert dein Code problemlos (wenn JavaScript aktiviert ist).

Funktioniert denn das offizielle Minimal-Beispiel bei dir: https://dash.plotly.com/minimal-app ?

Re: Thoony

Verfasst: Mittwoch 30. Juli 2025, 13:00
von Maenni_71
Nein, das geht auch nicht. Ich habe es jetzt zu Hause und in der Arbeit probiert. Geht an beiden Rechnern nicht!

Re: Thoony

Verfasst: Mittwoch 30. Juli 2025, 15:18
von grubenfox
Gibt es denn nach dem Aufruf von

Code: Alles auswählen

python app.py
irgendwelche Fehlermeldungen? Also bei dem offiziellen Minimal-Beispiel

Re: Thoony

Verfasst: Mittwoch 30. Juli 2025, 15:23
von __blackjack__
@grubenfox: Also bei mir nicht. Es hängt einfach. Weder in der Konsole noch im Browser tut sich was. Bis der Browser in den Timeout läuft und sagt das die Gegenseite nix sendet.

Re: Thoony

Verfasst: Mittwoch 30. Juli 2025, 18:09
von nezzcarth
Ich habe es mit dash 3.1.1 und Python 3.13.5 unter Linux probiert. Lokale Firewall auf Fehlkonfiguration sowie sonstige Sicherheitsmechanismen geprüft? Geprüft, ob das Skript korrekt bindet und auf dem Port horcht (mit netstat/ss unter Linux; unter Windows kenne ich den Befehl leider nicht)?

Re: Thoony

Verfasst: Mittwoch 30. Juli 2025, 18:48
von noisefloor
Also bei mir funktioniert das auch einwandfrei, mit dem Miniskript aus dem 1. Post. Sowohl unter Win 11 24H2 mit Python 3.13.5 als auch mit Ubuntu 24.04 in WSL und dem Default-Python von 24.04. "Wird geladen..." sehe ich für ca. 1/3 Sekunden, dann kommt "Dash funktioniert" - wie es halt sein soll. Die Windows-Firewall meldet sich auch nicht, dass man irgendwas freigeben soll.

Gruß, noisefloor

Re: Thoony

Verfasst: Mittwoch 30. Juli 2025, 19:35
von Maenni_71
__blackjack__ hat geschrieben: Mittwoch 30. Juli 2025, 15:23 @grubenfox: Also bei mir nicht. Es hängt einfach. Weder in der Konsole noch im Browser tut sich was. Bis der Browser in den Timeout läuft und sagt das die Gegenseite nix sendet.
Genau gleich wie bei mir! Schade.

Re: Thoony

Verfasst: Mittwoch 30. Juli 2025, 19:36
von Maenni_71
Ich bin ja froh, dass ich nicht der Einzige bin!

Re: Thoony

Verfasst: Mittwoch 30. Juli 2025, 21:31
von nezzcarth
Maenni_71 hat geschrieben: Mittwoch 30. Juli 2025, 19:36 Ich bin ja froh, dass ich nicht der Einzige bin!
Das ist sicher gut zu hören, aber ja keine Lösung :)

Funktioniert das (nur im lokalen Netz hinter NAT bzw. mit aktiver Firewall ausprobieren!)?

Code: Alles auswählen

from dash import Dash, html
app = Dash(__name__)
app.layout = html.Div("Dash funktioniert!")
if __name__ == "__main__":
	app.run(debug=True, host="0.0.0.0")
(Aufruf über http://127.0.0.1:8050 oder deine lokale Ip mit demselben Port; zudem sicher gehen, dass kein https verwendet wird).

Ansonsten bitte die Dinge, die ich weiter oben angesprochen habe, beantworten, sodass man ggf. detaillierter antworten kann (Python Version, Dash Version, Betriebssysstem, Sicherheitsfeatures, gucken, ob der Port aktiv ist, gucken im Browser).

Re: Thoony

Verfasst: Donnerstag 31. Juli 2025, 06:43
von Maenni_71
nezzcarth hat geschrieben: Mittwoch 30. Juli 2025, 21:31
Maenni_71 hat geschrieben: Mittwoch 30. Juli 2025, 19:36 Ich bin ja froh, dass ich nicht der Einzige bin!
Das ist sicher gut zu hören, aber ja keine Lösung :)

Funktioniert das (nur im lokalen Netz hinter NAT bzw. mit aktiver Firewall ausprobieren!)?

Code: Alles auswählen

from dash import Dash, html
app = Dash(__name__)
app.layout = html.Div("Dash funktioniert!")
if __name__ == "__main__":
	app.run(debug=True, host="0.0.0.0")
(Aufruf über http://127.0.0.1:8050 oder deine lokale Ip mit demselben Port; zudem sicher gehen, dass kein https verwendet wird).

Ansonsten bitte die Dinge, die ich weiter oben angesprochen habe, beantworten, sodass man ggf. detaillierter antworten kann (Python Version, Dash Version, Betriebssysstem, Sicherheitsfeatures, gucken, ob der Port aktiv ist, gucken im Browser).
Das Browserfenster meldet nicht mehr. "Wird geladen..."
Es kommt folgende Meldung:
Die Website ist nicht erreichbar
Die Webseite unter http://0.0.0.0:8050/ ist eventuell vorübergehend nicht verfügbar oder wurde dauerhaft an eine neue Webadresse verschoben.
ERR_ADDRESS_INVALID

Meine Installation:
-> Win11 Prof 24H2 (Build 26100.4770)
-> Thonny 4.1.7
-> Python 3.10.11
-> Tk 8.6.13
-> Dash 3.1.1
-> Netstat sagt, Port 8050 ist aktiv
-> Firewall und Defender aus, aber es geht noch immer nicht

Re: Thoony

Verfasst: Donnerstag 31. Juli 2025, 07:05
von noisefloor
Welche URL rufst du den auf? http://0.0.0.0:8050 oder http://127.0.0.1:8050?

Gruß, noisefloor

Re: Thoony

Verfasst: Donnerstag 31. Juli 2025, 16:06
von nezzcarth
0.0.0.0 ist keine auflösbare, echte IP sondern in dem Fall ein Alias, um auf allen Netzwerkinterfaces zu lauschen. Daher musst du stattdessen im Browser eine gültige IP des Rechners angeben, also 127.0.0.1 oder eine tatsächliche Netzwerkadresse, die das Gerät hat.