Un script python sur mon navigateur avec cgi
Bonjour,
J'espère que vous allez bien. Je suis débutant en python et je suis un cours en ligne. Je teste les exemples chez moi, mais quand, j'essaie de visualiser le rendu html avec le serveur cgi le navigateur m'affiche le code source.
Voici mon code python cgi et ensuite mon script python contenant le html.
Python cgi
Le script python
J'espère que vous allez bien. Je suis débutant en python et je suis un cours en ligne. Je teste les exemples chez moi, mais quand, j'essaie de visualiser le rendu html avec le serveur cgi le navigateur m'affiche le code source.
Voici mon code python cgi et ensuite mon script python contenant le html.
Python cgi
import http.server
port = 80
adresse = ("", port)
server = http.server.HTTPServer
handler = http.server.CGIHTTPRequestHandler
handler.cgi_directories = ["//"]
httpd = server(adresse, handler)
httpd.serve_forever()
Le script python
print("Content-type: text/html; charset=utf-8")
html = """<!DOCTYPE html>
<head>
<meta charset="utf-8">
<title>Ma page web</title>
</head>
<body>
<h1>Bonjour</h1>
</body>
</html>
"""
print(html)
A voir également:
- Un script python sur mon navigateur avec cgi
- Navigateur web - Guide
- Script vidéo youtube - Guide
- Extension de navigateur - Guide
- Navigateur privé - Guide
- Citizen code python avis - Accueil - Outils
2 réponses
Bonjour,
Avec ton code, j'observe le même problème.
En repartant de ce message et en l'adaptant un peu, le CGI fonctionne correctement avec le code suivant.
server.py
cgi-bin/cgi_demo.py
Exécution
(et dans le navigateur, on voit bien juste "hello world", comme prévu).
Bonne chance
Avec ton code, j'observe le même problème.
En repartant de ce message et en l'adaptant un peu, le CGI fonctionne correctement avec le code suivant.
server.py
#!/usr/bin/env python3
from http.server import HTTPServer, CGIHTTPRequestHandler
if __name__ == '__main__':
try:
CGIHTTPRequestHandler.cgi_directories = ['/cgi-bin']
httpd = HTTPServer(('', 8000), CGIHTTPRequestHandler)
print(f"Running server. Use [ctrl]-c to terminate.")
httpd.serve_forever()
except KeyboardInterrupt:
print(f"\nReceived keyboard interrupt. Shutting down server.")
httpd.socket.close()
cgi-bin/cgi_demo.py
#!/usr/bin/env python3
print("Content-type: text/html\n\n")
print("<html><body>hello world!</body></html>")
Exécution
chmod a+x cgi-bin/cgi_demo.py python3 server.py firefox http://localhost:8000/cgi-bin/cgi_demo.py
(et dans le navigateur, on voit bien juste "hello world", comme prévu).
Bonne chance
Bonsoir !
Déjà merci à mamiemando pour la volonté de bien vouloir m'aider, mais j'ai testé votre code ça m'affiche la même chose : le contenu de mon script c-à-d le code source au lieu de visualiser le script.
Donc ceci dans le navigateur :
#coding:utf-8
#!/usr/bin/env python3
print("Content-type: text/html\n\n")
print("<html><body>hello world!</body></html>")
Déjà merci à mamiemando pour la volonté de bien vouloir m'aider, mais j'ai testé votre code ça m'affiche la même chose : le contenu de mon script c-à-d le code source au lieu de visualiser le script.
Donc ceci dans le navigateur :
#coding:utf-8
#!/usr/bin/env python3
print("Content-type: text/html\n\n")
print("<html><body>hello world!</body></html>")