Seite 1 von 2

Flask Page wird im Browser nicht geladen

Verfasst: Donnerstag 21. Dezember 2023, 06:39
von Gorditron
Ich habe ein kleines Problem und möchte mich in Flask ausprobieren.
Nun habe ich In PyCharm ein Testprojekt gestartet und es funktioniert auch alles ohne Probleme.
Wenn ich nun das selbe Projekt über CMD starte und die Seite mit 127.0.0.1:5000 aufrufen möchten, funktioniert es nicht.
Der Browser bleibt auf "Seite Laden" stehen und es kommt auch keine Fehlermeldung.
Danach habe ich wieder das Projekt In PyCharm gestartet, es funktioniert weiterhin alles ohne Probleme und auch mit den selben Browser.
Dann habe ich das Projekt mit Tonny und mit Idle getestet und bei beiden, ist das gleiche Fehlerbild aufgetreten.
Habt Ihr eine Idee?

- Python auf dem Rechner: V3.12.1 (CMD und Idle)
- Tonny Python: V3.10.11
- PyCharm Python: V3.12
- Browser: Google Chrome
- Flask überall eingebunden
- Templates Ordner mit Index.html ist vorhanden

Code: Alles auswählen

from flask import Flask, request, render_template

app = Flask(__name__)


@app.route('/')
def index():
    return render_template('index.html')


@app.route('/login', methods=['GET', 'POST'])
def login():
    name = ""
    if request.method == 'POST':
        name = request.form['name']
    else:
        name = request.args.get('name')

    return 'Hello' + name + "!"

if __name__ == '__main__':
    app.run(port=5000, debug=True)

Re: Flask Page wird im Browser nicht geladen

Verfasst: Donnerstag 21. Dezember 2023, 07:34
von noisefloor
Hallo,

wenn du Flask bzw. deine Flask Applikation in einem Terminal startest bekommst du doch eine Ausgabe im Terminal. Da siehst du u.a. auch, ob überhaupt ein Request des Browser ankommt.

Gruß, noisefloor

Re: Flask Page wird im Browser nicht geladen

Verfasst: Donnerstag 21. Dezember 2023, 10:20
von einfachTobi
PyCharm legt standardmäßig für neue Projekte ein venv an. Hast du das beim Starten über cmd und Thonny vorher aktiviert bzw. wenn nicht: ist Flask in dem Python mit dem du es startest installiert?

Re: Flask Page wird im Browser nicht geladen

Verfasst: Donnerstag 21. Dezember 2023, 15:08
von Gorditron
Danke , für eure Rückmeldungen.
Also ich würde sagen, dass die Meldungen OK sind.
Ich habe Python im Pfad hinterlegt und habe auch Flask mit PIP installiert
Auch in den Thonny Paketen habe ich Flask installiert.
Eine Requestliste der einzelnen Anfrage, bekomme ich nur in PyCharm.

Hier die Rückmeldungen von Thonny und CMD:
Nach dem Start von Thonny!

Code: Alles auswählen

>>> %Run main.py
 * Serving Flask app 'main'
 * Debug mode: on
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
 * Running on http://127.0.0.1:5000
Press CTRL+C to quit
 * Restarting with stat
OK
Nach dem Start über CMD!

Code: Alles auswählen

C:\Users\gs\Desktop\Dolphin_6_V0_0_0_a1>python main.py
 * Serving Flask app 'main'
 * Debug mode: on
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
 * Running on http://127.0.0.1:5000
Press CTRL+C to quit
 * Restarting with stat
 * Debugger is active!
 * Debugger PIN: 124-735-076
 

Re: Flask Page wird im Browser nicht geladen

Verfasst: Donnerstag 21. Dezember 2023, 15:12
von __blackjack__
@Gorditron: Und was kommt zu dieser Ausgabe jeweils dazu wenn Du die Seite im Browser lädst?

Re: Flask Page wird im Browser nicht geladen

Verfasst: Donnerstag 21. Dezember 2023, 15:37
von Gorditron
PyCharm gibt diese einzelnen Anfrage raus und Thonny, CMD und Idle geben nichts raus.

Code: Alles auswählen

127.0.0.1 - - [21/Dec/2023 15:34:24] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [21/Dec/2023 15:34:24] "GET /favicon.ico HTTP/1.1" 404 -

Re: Flask Page wird im Browser nicht geladen

Verfasst: Donnerstag 21. Dezember 2023, 16:13
von __blackjack__
@Gorditron: Versuch mal einen anderen Browser. Chrome/Chromium hat zumindest in der Vergangenheit nämlich ein ziemlich dusseliges Verhalten an den Tag gelegt was inkompatibel mit Server ist, die single-threaded laufen, und zu „dead lock“-Situationen führen kann.

Re: Flask Page wird im Browser nicht geladen

Verfasst: Freitag 22. Dezember 2023, 08:28
von Gorditron
Ich habe es jetzt mit einem anderen Browser (Firefox) getestet.
1. Test CMD : hat funktioniert
2. Test Thonny: hat nicht funktioniert
3. Test CMD: hat nicht funktioniert
4. Test CMD: Port auf 5001 geändert -> hat wieder funktioniert!

Code: Alles auswählen

if __name__ == '__main__':
    app.run(port=5001, debug=True)
Als wenn jeder Port immer nur einmal funktioniert!?

Re: Flask Page wird im Browser nicht geladen

Verfasst: Freitag 22. Dezember 2023, 08:39
von Gorditron
Port-Freigabe (5000) in der Firewall hat nichts gebracht.

Re: Flask Page wird im Browser nicht geladen

Verfasst: Freitag 22. Dezember 2023, 10:47
von kbr
Greifst du von einem anderen Rechner im gleichen Netzwerk zu? Dann solltest du beim Start von Flask auch den Host angeben und auf 0.0.0.0 stellen.

Re: Flask Page wird im Browser nicht geladen

Verfasst: Freitag 22. Dezember 2023, 13:12
von noisefloor
Hallo,

"funktioniert nicht" ist keine wirklich brauchbare Fehlermeldung bzw. damit kommt niemand weiter... davon ausgehend, dass die Flask Applikation grundsätzlich lauffähig ist gibt IMHO drei Möglichkeiten:

* beim Aufruf des Skript in der Umgebung $FOO bekommt man direkt eine Fehlermeldung (z.B. weil das Flask-Modul fehlt) und das Skript wird erst gar nicht ausgeführt.
* Das Skript läuft, bekommt aber trotz Aufruf im Browser nie einen Request -> dann stimmt was im Netzwerk nicht und im Browser sollte man eine Fehlermeldung bekommen.
* Das Skript läuft, bekommt einen Request und erfüllt diesen. Dann bekommt man eine Logausgabe von Flask. Wenn im Browser der Ladespinner unendlich dreht stimmt was mit dem Browser nicht.

Gruß, noisefloor

Re: Flask Page wird im Browser nicht geladen

Verfasst: Freitag 22. Dezember 2023, 13:23
von Gorditron
Nein, ich greife momentan nur lokal zu.

Re: Flask Page wird im Browser nicht geladen

Verfasst: Freitag 22. Dezember 2023, 13:46
von Gorditron
Hallo noisefloor,
danke für deine Infos, aber mein Problem ist, dass es keine Fehlermeldungen gibt.
Ansonsten würde ich diese posten. Im Browser läuft nur eine Eieruhr ohne Ende.
Gibt es eine Möglichkeit, den Datenaustausch zwischen dem Browser und dem Flask-Modul zu loggen?
Gruss Gorditron

Re: Flask Page wird im Browser nicht geladen

Verfasst: Freitag 22. Dezember 2023, 15:09
von kbr
Gorditron hat geschrieben: Freitag 22. Dezember 2023, 08:28 Als wenn jeder Port immer nur einmal funktioniert!?
Das ist in der Tat so, wenn ein Port nicht für ein "reuse" eingestellt wird. Ich kann mir aber nicht vorstellen, das dies im Entwicklungsserver von Flask nicht berücksichtigt wird. Jedenfalls hat sich Flask bei mir noch nie so verhalten.

Am besten Du legst für Dein Projekt manuell ein virtuelles Environment an; dann weißt Du was Du wo getan hast und bist nicht von der möglicherweise unverstandenen Magie der IDEs abhängig. Dort installierst Du dann Flask. Und aus diesm Environment heraus startest Du dann die Anwendung – alles schön von der Kommandozeile.

Re: Flask Page wird im Browser nicht geladen

Verfasst: Freitag 22. Dezember 2023, 15:50
von grubenfox
Gorditron hat geschrieben: Freitag 22. Dezember 2023, 13:46 Gibt es eine Möglichkeit, den Datenaustausch zwischen dem Browser und dem Flask-Modul zu loggen?
Entwicklerkonsole im Browser? Hier im Firefox habe ich unter "Extras" einen Untermenüpunkt "Browser-Werkzeuge" was dann zu weiteren interessant klingenden Menüpunkten führt...

Re: Flask Page wird im Browser nicht geladen

Verfasst: Freitag 22. Dezember 2023, 18:11
von Gorditron
Hallo Grubenfox,
ja kenne ich und das habe ich schon geprüft!
Ich habe ja oben schon geschrieben, dass es keine Fehlermeldungen gibt.
Keine Fehlermeldung im Browser (Chrome/Entwicklungstools/Konsole)
Keine Fehlermeldungen von dem Flaskmodul.

Re: Flask Page wird im Browser nicht geladen

Verfasst: Samstag 23. Dezember 2023, 09:51
von noisefloor
Hallo,

du schweigst dich immer noch über die Ausgabe von Flask aus, siehe diverse Posts weiter oben. Wenn du Flask mit dem eingebauten Entwicklungserver wie in deinem Falle startest gibt der in den Terminal, indem er läuft, zwingend was aus. Die Ausgabe muss du analysieren oder gerne auch hier posten. Ohne kommt man hier wohl nicht weiter.

Gruß, noisefloor

Re: Flask Page wird im Browser nicht geladen

Verfasst: Samstag 23. Dezember 2023, 10:09
von Gorditron
du schweigst dich immer noch über die Ausgabe von Flask aus
Hallo noiseflor,
nein! In meinem Post vom 21.Dezember um 15:08 Uhr habe ich doch die Konsolenausgabe von Flask gepostet.
Mehr wird von Flask nicht ausgegeben.

Hier noch einmal die Rückmeldungen von Thonny und CMD:
Nach dem Start von Thonny!

Code: Alles auswählen

>>> %Run main.py
 * Serving Flask app 'main'
 * Debug mode: on
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
 * Running on http://127.0.0.1:5000
Press CTRL+C to quit
 * Restarting with stat
OK
Nach dem Start über CMD!

Code: Alles auswählen

C:\Users\gs\Desktop\Dolphin_6_V0_0_0_a1>python main.py
 * Serving Flask app 'main'
 * Debug mode: on
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
 * Running on http://127.0.0.1:5000
Press CTRL+C to quit
 * Restarting with stat
 * Debugger is active!
 * Debugger PIN: 124-735-076
 
Diese Log wie bei PyCharm werden nicht ausgegeben! Auch keine weiteren Fehlermeldungen!

Code: Alles auswählen

127.0.0.1 - - [21/Dec/2023 15:34:24] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [21/Dec/2023 15:34:24] "GET /favicon.ico HTTP/1.1" 404 -

Re: Flask Page wird im Browser nicht geladen

Verfasst: Samstag 23. Dezember 2023, 12:53
von Gorditron
Wenn einer auch dieses Problem hat:

Ich kann zur Zeit nur für Windows 11 sprechen.
Es gib ein Problem mit dem erreichen des Servers.
Der Reloader, wird automatisch im Debug-Modus gestartet und ist die Ursache.
Mit folgender Änderung hatte sich das Problem erledigt.
Ich arbeite seit einer Woche mit Python und vielleicht gibt es einen hier,
der das "Warum" erklären kann.
Ich habe die Lösung im Netz, ohne genaue Erklärung des Problems, gefunden.

Code: Alles auswählen

app.run(use_reloader=False, host="0.0.0.0", port=8080 , debug=False)

Re: Flask Page wird im Browser nicht geladen

Verfasst: Samstag 23. Dezember 2023, 13:06
von __deets__
Ich kann nur raten, dass da Windows still und leise die Firewall anwirft. Weil da ein Debugger-Port geoeffnet wird oder so.