Примеры создания скриптов на python (*.py)
Внимание: примеры для mod_python даны для ознакомления, рекомендуется использовать запуск под CGI или FastCGI.
1. Пример Python скрипта для обработки формы, рассчитанный на mod_python:
from mod_python import apache, util
def index(req):
form = util.FieldStorage(req)
req.content_type = "text/html"
if not req.form.has_key("s_name"):
req.write('<html><head><title>Situation snapshot</title></head><body>')
req.write('<h1>Simple form</h1><form action="gui.py" method="POST">')
req.write('Enter your name: <input name="s_name" type="text"><br>')
req.write('<input name="submit" type="submit"></form></body></html>')
else:
req.write ("<p>Your name is: %s" % req.form['s_name'])
req.write('</body></html>')
Для того чтобы Ваши скрипты, разработанные на python работали под Apache (mod_python), Вам необходимо в файле .htaccess корня сайта, добавить следующее:
<Files ~ (\.py$)>
PythonHandler mod_python.publisher
</Files>
После чего скрипт можно помещать в любой каталог Вашего сайта.
2. Пример Python скрипта для обработки формы, рассчитанный на запуск под CGI:
#!/usr/bin/python
print "Content-type: text/html"
print
print "<html><head><title>Situation snapshot</title></head><body>"
import cgi
form = cgi.FieldStorage()
if not form.has_key("s_name"):
print '<h1>Simple form</h1><form action="guicgi.py" method="POST">'
print 'Enter your name: <input name="s_name" type="text"><br>'
print '<input name="submit" type="submit"></form></body></html>'
else:
print "<p>Your name is:",form['s_name'].value
print "</body></html>"
Данный скрипт необходимо поместить в каталог cgi-bin домашнего каталога и выставить права на запуск.
3. Пример Python скрипта для обработки формы, рассчитанный на запуск под
mod_python.cgihandler
:
print "Content-type: text/html"
print
print "<html><head><title>Situation snapshot</title></head><body>"
import os, cgi
form = cgi.FieldStorage(environ=os.environ,keep_blank_values=1)
if not form.has_key("s_name"):
print '<h1>Simple form</h1><form action="guicgi.py" method="POST">'
print 'Enter your name: <input name="s_name" type="text"><br>'
print '<input name="submit" type="submit"></form></body></html>'
else:
print "<p>Your name is:",form['s_name'].value
print "</body></html>"
4 . Пример Python скрипта для обработки формы, рассчитанный на запуск под FastCGI:
#!/usr/bin/python
import fcgi
while fcgi.isFCGI():
req = fcgi.Accept()
print "Content-type: text/html"
print
print "<html><head><title>Situation snapshot</title></head><body>"
form = req.getFieldStorage()
if not form.has_key("s_name"):
print '<h1>Simple form</h1><form action="guicgi.fcgi" method="POST">'
print 'Enter your name: <input name="s_name" type="text"><br>'
print '<input name="submit" type="submit"></form></body></html>'
else:
print "<p>Your name is:",form['s_name'].value
print "</body></html>"
req.Finish()
В файл .htaccess корня сайта, необходимо добавить следующее:
Options +ExecCGI AddHandler fcgid-script .fcgi
Так же необходимо положить файл
fcgi.py
в один каталог со скриптом обработки формы или в любой другой каталог прописав путь к нему в переменной окружения
PYTHONPATH
.
У сотрудников хостинга КОМТЕТ большой опыт по разработке и интегрции Python-проектов, вы всегда можете обратиться к нам за помощью и консультацией.