Thoony

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Maenni_71
User
Beiträge: 6
Registriert: Montag 28. Juli 2025, 07:51

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.
Sirius3
User
Beiträge: 18270
Registriert: Sonntag 21. Oktober 2012, 17:20

Thoony interagiert mit den gestarteten Pythonprogrammen auf exotische Weise. Da kann es zu seltsamen Verhalten kommen. Starte Dein Programm von einer Konsole (Eingabeaufforderung) aus.
Maenni_71
User
Beiträge: 6
Registriert: Montag 28. Juli 2025, 07:51

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?
Benutzeravatar
__blackjack__
User
Beiträge: 14045
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Kann ich nachvollziehen. Da passiert einfach nix. Der Browser wartet auf eine Antwort, bekommt aber keine.
„A life is like a garden. Perfect moments can be had, but not preserved, except in memory. LLAP” — Leonard Nimoy's last tweet.
nezzcarth
User
Beiträge: 1762
Registriert: Samstag 16. April 2011, 12:47

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 ?
Maenni_71
User
Beiträge: 6
Registriert: Montag 28. Juli 2025, 07:51

Nein, das geht auch nicht. Ich habe es jetzt zu Hause und in der Arbeit probiert. Geht an beiden Rechnern nicht!
Benutzeravatar
grubenfox
User
Beiträge: 612
Registriert: Freitag 2. Dezember 2022, 15:49

Gibt es denn nach dem Aufruf von

Code: Alles auswählen

python app.py
irgendwelche Fehlermeldungen? Also bei dem offiziellen Minimal-Beispiel
Benutzeravatar
__blackjack__
User
Beiträge: 14045
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@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.
„A life is like a garden. Perfect moments can be had, but not preserved, except in memory. LLAP” — Leonard Nimoy's last tweet.
nezzcarth
User
Beiträge: 1762
Registriert: Samstag 16. April 2011, 12:47

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)?
Benutzeravatar
noisefloor
User
Beiträge: 4191
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

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
Maenni_71
User
Beiträge: 6
Registriert: Montag 28. Juli 2025, 07:51

__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.
Maenni_71
User
Beiträge: 6
Registriert: Montag 28. Juli 2025, 07:51

Ich bin ja froh, dass ich nicht der Einzige bin!
nezzcarth
User
Beiträge: 1762
Registriert: Samstag 16. April 2011, 12:47

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).
Maenni_71
User
Beiträge: 6
Registriert: Montag 28. Juli 2025, 07:51

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
Benutzeravatar
noisefloor
User
Beiträge: 4191
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Welche URL rufst du den auf? http://0.0.0.0:8050 oder http://127.0.0.1:8050?

Gruß, noisefloor
nezzcarth
User
Beiträge: 1762
Registriert: Samstag 16. April 2011, 12:47

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.
Antworten