Heim > Backend-Entwicklung > Python-Tutorial > Verwenden des CGI-Moduls zum Erstellen eines einfachen Tutorialbeispiels für eine Webseite

Verwenden des CGI-Moduls zum Erstellen eines einfachen Tutorialbeispiels für eine Webseite

零下一度
Freigeben: 2017-05-19 13:06:49
Original
2761 Leute haben es durchsucht

Ich habe in den letzten Tagen Python-Webprogrammierung gelernt. Der Hauptinhalt besteht darin, einen einfachen Webserver zu erstellen und CGI-Module zum Erstellen einfacher Webseiten zu verwenden (Entschuldigung für die unprofessionelle Verwendung von Wörtern).

Es gibt drei Module, die von Python zum Erstellen eines HTTP-Servers verwendet werden:
1) BaseHTTPServer: Stellt grundlegende Webdienste und Prozessorklassen bereit, nämlich HTTPServer und BaseHTTPRequestHandler;
2) SimpleHTTPServer: Enthält die SimpleHTTPRequestHandler-Klasse, die GET- und HEAD-Anfragen ausführt;
3) CGIHTTPServer : Enthält die CGIHTTPRequestHandler-Klasse, die POST-Anfragen verarbeitet und ausführt.

Der einfachste Webserver von Python ist unten dargestellt:


Auf diese Weise können Sie auf den Inhalt auf dem Server zugreifen


Greifen Sie beispielsweise direkt auf die folgende HTML-Seite zu, das Ergebnis ist wie folgt folgt:


hello.html wird im Stammverzeichnis des Servers gespeichert, der Code lautet wie folgt:

<meta http-equiv=&#39;Content-Type&#39; content=&#39;text/html; charset=UTF-8&#39;>
<html><head><title>数据库列表</title></head>
<body>
<form action="/cgi-bin/hello_get.py" method="get">
First Name: <input type="text" name="first_name">  <br />

Last Name: <input type="text" name="last_name" />
<input type="submit" value="Submit" />
</form>
</body></html>
Nach dem Login kopieren

in hello In der .html-Datei ist eine hello_get.py verlinkt, die im Ordner cgi-bin im Stammverzeichnis des Servers gespeichert ist. Der Code lautet wie folgt:

#!/usr/bin/python

# Import modules for CGI handling
import cgi, cgitb

# Create instance of FieldStorage
form = cgi.FieldStorage()

# Get data from fields
first_name = form.getvalue(&#39;first_name&#39;)
last_name  = form.getvalue(&#39;last_name&#39;)

print "Content-type:text/html\r\n\r\n"
print "<html>"
print "<head>"
print "<title>Hello - Second CGI Program</title>"
print "</head>"
print "<body>"
print "<h2>Hello %s %s</h2>" % (first_name, last_name)
print "</body>"
print "</html>"
Nach dem Login kopieren

Geben Sie die Informationen auf der Seite im vorherigen Bild ein und klicken Sie auf Senden. Die Ergebnisse sind wie folgt:


Es ist erwähnenswert. Das Problem ist: Ich habe es am Anfang lange gemacht, und als ich die py-Datei aufrief, war sie entweder leer oder machte einen Fehler. Nachdem ich viele Netzwerkressourcen überprüft hatte, stellte ich fest, dass das Problem in den Berechtigungen der py-Datei liegt. Sie müssen nur chmod 755 XXX.py ausführen. Darüber hinaus

#!/usr/bin/python之前最好不要有其他信息,反正我发现上方保护如下信息的时候是显示不出来的
Nach dem Login kopieren
&#39;&#39;&#39;
Created on 2015-1-12


@author: root
&#39;&#39;&#39;
Nach dem Login kopieren

Ich bin nur ein Anfänger und kann daher nur meinen Lernprozess mitteilen, um zu vermeiden, dass jeder auf das gleiche Problem stößt wie ich und viel Zeit aufwendet.

[Verwandte Empfehlungen]

1. Teilen Sie ein Beispiel-Tutorial zum Ausführen von Python-Skripten mit CGI auf IIS

3.Was ist CGI? Detaillierte Einführung in die Python-CGI-Programmierung

4.

Teilen eines Beispiel-Tutorials zur Python-CGI-Programmierung

5 moderne CGI-Anwendungen

6.

FastCGI-Prozess wurde unerwartet beendet und verursachte einen 500-Fehler

Das obige ist der detaillierte Inhalt vonVerwenden des CGI-Moduls zum Erstellen eines einfachen Tutorialbeispiels für eine Webseite. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage