Статья расчитана на тех, кто имеет минимальные познания в Python. Наверняка все вы знакомы с браузерными MMO(RPG) играми. Такие в наше время можно встретить на просторах интернета часто. Это могут быть как простейшие текстовые игры, так и агрегаты на Flash или HTML5. Но не забываем, что одному другое не мешает. Вы вполне можете использовать множество технологий в одной игре. Сейчас мы рассмотрим с вами процесс создания веб-сайта на языке программирования Python. Конечно, есть конструкторы, которые позволяют создать подобные игры за считанные минуты (MMO Constructor), но опыт программирования и собственное творение с нуля нам тоже не помешает.
Установка
Предполагается, что вы имеете установленный Python. Если же нет, рекомендуем скачать с официального сайта и произвести инсталляцию на ваш компьютер или сервер. В данном примере мы будем использовать Web.Python 0.37, однако при желании вы можете установить последнюю версию. Распакуйте и скопируйте папку web в директорию с приложением, или же просто выполните команду:
Код
python setup.py install
Некоторые UNIX-подобные системы требуют выполнение команды от имени администратора:
Код
sudo python setup.py install
Также приложение можно установить при помощи EasyInstall, выполнив команду:
Код
sudo easy_install web.py
Самые основы
Давайте создадим новый текстовый файл и назовём его code.py. Откроем его и наберём данный код:
Код
import web
Это загрузит модуль Web.Py, ради которого собственно и варилась вся каша выше. Теперь нам необходимо объяснить серверу, какова же наша URL-структура. Напишем ниже:
Код
urls = ( '/', 'index' )
Теперь при входе в корень сайта будет загружена страница index. И пусть руки у вас не чешутся, сударь, ибо ничего ещё не готово.
Страницы сайта, GET\POST запросы
Многие из вас прекрасно знают различия между GET и POST запросами. GET запрос передаётся в адресную строку, а POST запрос - в тело скрипта. Кстати, передавать собственными руками POST-запросы без форм и скриптов - то же самое, что тянуть кота на диване за хвост вместо того, чтобы просто поднять и удалить куда-то подальше. Сейчас надо создать класс index, под которым подразумевается главная страница нашего сайта, или там игры, не знаю, что вы задумали.
Код
class index: def GET(self): return "Hello, world!"
Теперь при входе на сайт будет показываться текст Hello, world!. Проще говоря, мы не изменяем традициям. Теперь надо приказать нашему великому приложению, чтобы после всех трудов выводил нам HTML-код сайта. Для этого допишите такой код:
Код
if __name__ == "__main__": app = web.application(urls, globals()) app.run()
Давайте подытожим. Получился у нас такой код:
Код
import web
urls = ( '/', 'index' )
class index: def GET(self): return "Hello, world!"
if __name__ == "__main__": app = web.application(urls, globals()) app.run()
Скриптовая часть простого сайта готова, теперь надо его лишь запустить.
Запуск сервера
Зайдите в командную строку вашего сервера (или SSH-терминала) и введите команду:
Код
$ python code.py http://0.0.0.0:8080/
http://0.0.0.0:8080/ - это адрес и порт нашего веб-сайта. Вместо него можно ввести домен сайта, если он прикреплён, внешний или локальный IP-адрес. Оттуда мы собственно и получим доступ к сайту. На этом первый урок серии Создаем свой сайт\игру на Python подходит к концу. На следующем уроке мы будем использовать шаблонизатор, базу данных и формы. Приятного кодинга!
Также если вы считаете, что данный материал мог быть интересен и полезен кому-то из ваших друзей, то вы бы могли посоветовать его, отправив сообщение на e-mail друга:
Игровые объявления и предложения:
Если вас заинтересовал материал «Создаем свой сайт/игру на Python. Часть 1», и вы бы хотели прочесть что-то на эту же тему, то вы можете воспользоваться списком схожих материалов ниже. Данный список сформирован автоматически по тематическим меткам раздела.
Предлагаются такие схожие материалы:
Если вы ведёте свой блог, микроблог, либо участвуете в какой-то популярной социальной сети, то вы можете быстро поделиться данной заметкой со своими друзьями и посетителями.
Однако функционал тот же самый - вывод информации. Питон - плохой выбор для создания сайтов... Если только это не взаимосвязанная структура клиент-сервер. Если так, то хотелось бы увидеть в серии уроков внедрение веб-сокетов