Проще всего создать динамические страницы на Python при помощи CGI-скриптов. CGI-скрипты — это исполняемые файлы, которые выполняются веб-сервером, когда в URL запрашивается соответствующий скрипт.

Сегодня я расскажу про то, как написать Hello world, как CGI-скрипт.

Настройка локального сервера

В Python уже есть встроенный CGI сервер, поэтому его настройка элементарна.

Для запуска из консоли (для любителей linux-систем). Запускать нужно из той папки, где мы хотим работать:

Для сидящих на Windows чуть проще будет запуск Python файла (заметьте, что он должен находиться в той же папке, в которой мы планируем работать!):

Теперь откройте браузер и в адресной строке наберите localhost:8000

Если у вас примерно такая же картина, значит, у вас все заработало!

Hello world

Теперь в той папке, где мы запустили сервер, создаём папку cgi-bin (у меня она уже создана).

В этой папке создаём скрипт hello.py со следующим содержимым:

Первая строка говорит о том, что это Python скрипт (CGI-скрипты можно не только на Python писать).

Вторая строка печатает заголовок. Он обозначает, что это будет html файл (бывает ещё css, javascript, pdf и куча других, и браузер различает их по заголовкам).

Третья строка (просто символ новой строки) отделяет заголовки от тела ответа.

Четвёртая печатает Hello world.

Теперь переходим на localhost:8000/cgi-bin/hello.py

Если у вас не работает, проверьте, установлены ли права на выполнение.

Также в консоли запущенного сервера появляются сообщения об ошибках. Например, убрал скобочку и обновил страницу:

В следующей части мы рассмотрим обработку данных форм и cookies.

Python появился относительно недавно по сравнению с «мастодонтами» вроде C и «Фортрана», но сейчас он является вторым по популярности в мире языком программирования. Разбираем стартовые шаги.

Вопреки распространенному мнению, название Python образовано не от змеи, а от британской комик-группы Monty Python с гениальным абсурдистским юмором. Она была исключительно популярна в восьмидесятые годы, когда Гвидо ван Россум начал придумывать новый язык программирования. Но все уже привыкли к логотипу с двумя питонами.

Python (Питон) — высокоуровневый язык программирования общего назначения с минималистичным синтаксисом. Создан под влиянием языка ABC для обучения программированию. Другими словами, простой в изучении, очень понятный и универсальный язык. Первая версия вышла в феврале1991 года, это один из языков последнего поколения. Хотя Python появился относительно недавно по сравнению с «мастодонтами» вроде C и «Фортрана», но сейчас он является вторым по популярности в мире языком программирования.

В декабре1989 года я искал проект, который бы стал хобби на рождественские каникулы. Офис со всем оборудованием не работал, и, не имея необходимых ресурсов, я начал дорабатывать ABC, но на протяжении работы я и не думал, что может получиться что-то серьезное.

Гвидо ван Россум

создатель языка Python

Автор Python — голландский программист Гвидо ван Россум, очень веселый парень, который носит официальный титул «великодушный пожизненный диктатор» (BDFL) проекта. Это означает, что он продолжает наблюдать за своим детищем со стороны, хотя «Питон» давно ушел в свободное плавание, то есть уполз на волю, если исходить из семантики.

Какой Python выбрать

«Питонов» действительно существует много. Так называют и абстрактный интерфейс, и различные реализации (имплементации) Python. Главное, что следует понять: Python — это именно интерфейс. CPython — эталонная реализация Python от Гвидо, которая считается стандартом де-факто. Но есть и другие реализации: Jython, PyPy, IronPython.

Python активно развивается, новые версии (с добавлением/изменением языковых свойств) выходят примерно раз в два с половиной года. По этой и некоторым другим причинам на Python отсутствуют ANSI, ISO или другие официальные стандарты. Их роль выполняет CPython. Эта реализация написана на C, и часто ее называют просто Python. Поэтому вопрос «Как скачать Python?» обычно подразумевает скачивание и установку реализации СPython. Именно этот компилятор/интерпретатор распространяется с официального сайта python.org.

Что делает СPython? Он в определенном смысле компилирует исходный код Python в байткод, а затем интерпретирует этот байткод, запуская его на виртуальной машине CPython.

Например, в файлах с расширением .py хранится исходный код программ, а в файлах с расширением .pyc — «промежуточный» код, то есть скомпилированный байткод, который затем интерпретируется при выполнении в виртуальной машине CPython VM. Но, как уже упоминалось, вместо компилятора/интерпретатора CPython на языке C и виртуальной машины CPython VM можно использовать альтернативные компиляторы/интерпретаторы и виртуальные машины, написанные на других языках и лучше стыкующиеся с другими технологиями. Например, компилятор/интерпретатор Jython и виртуальную машину JVM (для платформы Java). Или IronPython, написанный полностью на C# и предназначенный для .NET.

Исходник Python можно писать на листе бумаги или в Блокноте Windows, неважно. Цифровой код обработают все вышеупомянутые компиляторы и интерпретаторы. Пусть они сгенерируют совершенно разный байткод, но результат выполнения программы не будет отличаться.

Итак, нужен стандартный интерпретатор CPython, установим его.

Установка интерпретатора Python

Как установить Python на Windows

Установить Python очень просто. Все релизы для доступных операционных систем перечислены на странице скачивания официального сайта python.org. Последняя сборка Python на данный момент — 3.6.5. Неважно, какую конкретно версию Python вы скачаете, — главное, чтобы ее номер начинался с цифры 3.

Далее запускаем скачанный файл. По умолчанию в комплекте устанавливается >pip (для скачивания и установки других пакетов на Python), стандартный набор тестов и Python Launcher для запуска программ двойным щелчком мыши по файлу .py в Проводнике Windows.

На следующем этапе можно выбрать путь установки и желательно указать «Установку для всех пользователей» (Install for all users).

Как установить Python на Linux

Python входит в состав большинства дистрибутивов Linux. Но если хотите самостоятельно скомпилировать последнюю версию CPython, исходники лежат здесь. Сборка запускается стандартной командой:

./configure
make
make install

Установка на macOS

Python также входит в комплект macOS, как и в большинство сборок Linux. Последнюю версию всегда можно скачать со страницы на официальном сайте.

Запуск > Как уже говорилось, в комплекте c Python устанавливается > (File —> Save) и запускать их на исполнение прямо в IDLE.

Например, напишем стандартную программу ‘Hello, world!’ в адаптированном варианте.

>>> print("Привет, Скилбокс!")
Привет, Скилбокс!
>>>

Итак, мы установили Python (CPython), запустили среду разработки, написали первую программу и запустили ее на исполнение в виртуальной машине.

Можете продолжить обучение самостоятельно по самоучителям и справочным ресурсам в интернете. Но более эффективно будет обратиться к образовательному курсу «Python-разработчик с нуля». Это практический четырехмесячный курс для тех, кто хочет научиться основам программирования на Python с индивидуальным наставником, начать писать первые программы и получить реальный опыт разработки.

  • Живая обратная связь с преподавателями
  • Неограниченный доступ к материалам курса
  • Стажировка в компаниях-партнёрах
  • Дипломный проект от реального заказчика
  • Гарантия трудоустройства в компании-партнёры для выпускников, защитивших дипломные работы

Курс идеально подходит и абсолютным новичкам, и начинающим программистам. Если вы дочитали эту статью и установили Python на своем компьютере, то уже готовы к дальнейшему обучению.

Первым делом вам надо включить поддержку CGI в тарифе хостинга. Личный кабинет/Хостинг аккаунты/ далее нажмите на домен и внизу найдите поддержку CGI!

После чего вы сможете запускать Python скрипты на хостинге. Обратите внимание! Для запуска стандартных Python скриптов, вам не требуется установка специализированных версий Python в разделе "Настройка Python приложений". Этот раздел служит для установки приложений таких как Django и других. По ссылкам вы можете почитать как устанавливать фреймворки и модули на примере Django и Flask

Всё намного проще.

Мы покажем вам как всё настроить на примере cPanel и "Фаил менеджера", а так же SSH.

1. Войдите Cpanel

2. Перейти в Файлы > Файловый менеджер

3. Перейдите в папку cgi-bin

4. Создайте фаил с расширением .py, для примера test.py в папке /home/cPuser/public_html/cgi-bin (где cPuser ваш логин в cPanel)

5. Установите права 755 на фаил

Примечание: файлы создаются с разрешениями по умолчанию 0644. Фаил .py станет исполняемым при изменении разрешений на 0755.

6. Откройте фаил с помощью правой клавиши мыши и ссылки EDIT либо с помощью кнопки "Редактировать" и добавьте для теста следующий скрипт.

По умолчанию Python находиться по адресу /usr/bin/python

Теперь вы можете попробовать запустить ваш скрипт по адресу http://domain.com/cgi-bin/test.py

Если вместо запуска скрипта открывается просто текст скрипта или ошибка 500, это может означать что вы не включили поддержку CGI в тарифе вашего хостинг аккаунта.

500 ошибка так же вызывается ошибкой скрипта.

Создание и редактирование P ython скрипта через SSH

1. Соединитесь с cPanel аккаунтом через SSH

2. Перейдите в cgi-bin директорию cd ./public_html/cgi-bin

Проверьте что вы в нужной директории используя команду pwd


3. Создайте фаил с расширением .py. для примера nctest.py в директории /home/cPuser/public_html/cgi-bin directory (где cPuser ваш логин в cPanel)

Для проверки что фаил создался, посмотрите директорию командой ls

4. Измените права на фаил в 0755 запустив команду

chmod 755 /home/cPuser/public_html/cgi-bin/nctest.py
(где cPuser ваш логин в cPanel)


5. Откройте фаил и добавьте следующий код

Вы можете открыть фаил используя программу nano

После добавьте следующий код для тестирования

print "Content-type: text/html

"
print "How to run Python scripts in cPanel"

Примечание: фаил должен начинаться с пути к Python скрипту /usr/bin/python на сервере.

Для сохранения изменений нажмте Crtl+O для Windows или Command+O для Mac OS

Теперь для запуска скрипта вы можете использовать путь http://domain.com/cgi-bin/nctest.py

Если вы хотели бы запускать скрипт не через папку cgi-bin, добавьте специальный код в .htaccess.

Лучше всего его расположить в папке public_html

Options +ExecCGI
AddHandler cgi-script .py

После чего вы сможете запускать скрипт по адресу http://domain.com/nctest.py