Форум программистов, компьютерный форум, киберфорум
Python: Web
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.72/75: Рейтинг темы: голосов - 75, средняя оценка - 4.72
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,750

Python в HTML файлах

14.01.2020, 19:59. Показов 15535. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Можно ли в html файлы вставлять код Python, наподобие как в PHP можно вставлять с помощью include, require? Если нельзя, то может быть есть какие то обходные пути?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.01.2020, 19:59
Ответы с готовыми решениями:

PyCharm - нет автодополнения ни {% ни {{ в файлах html (и вообще фенкция python)
Всем привет. Совсем недавно начал изучение Django и столкнулся с проблемой , описанной в заголовке, может я что-то неправильно настроил или...

Сценарии в бат файлах через python 3
Здрастеbat_file.write(r'start exe.exe %*') тут все работает а если я к примеру хочу длинный сценарий bat_file.write(r'start exe.exe ...

Замена текста во всех html файлах
import os import codecs import time def get_html(link): file_name = link print(file_name)

22
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
14.01.2020, 20:13
Цитата Сообщение от supmener Посмотреть сообщение
Можно ли в html файлы вставлять код Python
В обычные - нет. В серверные шаблоны - да (в рамках синтаксиса конкретного шаблонизатора).

Цитата Сообщение от supmener Посмотреть сообщение
есть какие то обходные пути?
Да. Вы прошлой теме Brython и Ко вы их все и озвучили.
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,750
14.01.2020, 22:05  [ТС]
Цитата Сообщение от Garry Galler Посмотреть сообщение
В обычные - нет
Кроме этого ничего не понял.
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
14.01.2020, 22:40
https://ru.wikipedia.org/wiki/Шаблонизатор
1
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
15.01.2020, 09:31
Посмотри django. Там есть в том числе и шаблонизатор. Не чистый питон, но возможностей, чтобы отрисовать большинство вещей хватает: https://tutorial.djangogirls.o... templates/
HTML5
1
2
3
4
5
6
7
8
9
10
11
<div>
    <h1><a href="/">Django Girls Blog</a></h1>
</div>
 
{% for post in posts %}
    <div>
        <p>published: {{ post.published_date }}</p>
        <h1><a href="">{{ post.title }}</a></h1>
        <p>{{ post.text|linebreaksbr }}</p>
    </div>
{% endfor %}
Добавлено через 4 часа 4 минуты
Наследование шаблонов: https://docs.djangoproject.com... nheritance

include: https://docs.djangoproject.com... s/#include
1
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,750
19.01.2020, 10:38  [ТС]
А как вывести этот код в браузер (из книги автора Прохоренок про Python: Самое необходимое)
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# -*- coding: utf-8 -*-
html = """<html>
<head><title>%(title)s</title>
</head>
<body>
<h1>%(h1)s</h1>
<div>%(content)s</div>
</body>
</html>"""
arr = {"title":    "Это название документа",
       "h1":       "Это заголовок первого уровня",
       "content":  "Это основное содержание страницы"}
print(html % arr) # Подставляем значения и выводим шаблон
input()
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
19.01.2020, 10:54
Нужен сервер.

Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
cat cgi-bin/hello.py 
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
print("Content-type: text/html; charset=utf-8")
print()
 
html = """<html>
<head><title>%(title)s</title>
</head>
<body>
<h1>%(h1)s</h1>
<div>%(content)s</div>
</body>
</html>"""
arr = {"title":    "Это название документа",
       "h1":       "Это заголовок первого уровня",
       "content":  "Это основное содержание страницы"}
print(html % arr) # Подставляем значения и выводим шаблон
 
python3 -m http.server --cgi 8000
http://127.0.0.1:8000/cgi-bin/hello.py

Лучше посмотри в сторону джанго.
1
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,750
19.01.2020, 12:48  [ТС]
На сайте сервера написано:
nginx: скачать
Основная версия
CHANGES.ru nginx-1.17.7 pgp nginx/Windows-1.17.7 pgp
Стабильная версия
CHANGES.ru-1.16 nginx-1.16.1 pgp nginx/Windows-1.16.1 pgp

Какую качать в каком случае?

Добавлено через 43 секунды
Цитата Сообщение от Рыжий Лис Посмотреть сообщение
Лучше посмотри в сторону джанго
А если скачаю сервер и установлю, этот код запустится без фрамеворка?
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
19.01.2020, 13:04
1) nginx раздаёт только статику.

2) В джанго есть встроенный dev-сервер.

3) А чтобы запустить мой пример тебе нужно:
* открыть консоль и создать папку cgi-bin
* внутрь положить файл с именем hello.py и следующим содержимым:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
print("Content-type: text/html; charset=utf-8")
print()
 
html = """<html>
<head><title>%(title)s</title>
</head>
<body>
<h1>%(h1)s</h1>
<div>%(content)s</div>
</body>
</html>"""
arr = {"title":    "Это название документа",
       "h1":       "Это заголовок первого уровня",
       "content":  "Это основное содержание страницы"}
print(html % arr) # Подставляем значения и выводим шаблон
* запустить сервер (введи это в консоли):
Bash
1
python3 -m http.server --cgi 8000
* увидеть, что всё ок, и перейти по ссылке http://127.0.0.1:8000/cgi-bin/hello.py
1
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,750
19.01.2020, 13:48  [ТС]
Цитата Сообщение от Рыжий Лис Посмотреть сообщение
А чтобы запустить мой пример тебе нужно:
* открыть консоль и создать папку cgi-bin
* внутрь положить файл с именем hello.py и следующим содержимым
А джанго или nginx надо установить для этого?
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
19.01.2020, 14:06
В этом случае - нет.
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,750
19.01.2020, 14:54  [ТС]
Цитата Сообщение от supmener Посмотреть сообщение
создать папку cgi-bin
A по какому пути и какой командой? Можно наверное создать мышкой?
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
19.01.2020, 15:11
В любом месте, можно и мышкой.

Добавлено через 29 секунд
Главное потом в консоли перейти по этому пути.
1
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,750
19.01.2020, 18:58  [ТС]
Code
1
2
3
4
5
6
7
8
9
10
Microsoft Windows XP [Версия 5.1.2600]
(С) Корпорация Майкрософт, 1985-2001.
 
C:\Documents and Settings\ia>cd C:\Python34\cgi-bin
 
C:\Python34\cgi-bin>python3 -m http.server --cgi 8000
"python3" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
 
C:\Python34\cgi-bin>
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
19.01.2020, 19:00
Просто python тогда. И на уровень вверх поднимись:
Bash
1
2
cd ..
python -m http.server --cgi 8000
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,750
19.01.2020, 19:12  [ТС]
В браузере страница не выводится, белое окно.

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Microsoft Windows XP [Версия 5.1.2600]
(С) Корпорация Майкрософт, 1985-2001.
 
C:\Documents and Settings\ia>cd C:\Python34\cgi-bin
 
C:\Python34\cgi-bin>python3 -m http.server --cgi 8000
"python3" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
 
C:\Python34\cgi-bin>python34 -m http.server --cgi 8000
"python34" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
 
C:\Python34\cgi-bin>cd ..
 
C:\Python34>python -m http.server --cgi 8000
Serving HTTP on 0.0.0.0 port 8000 ...
127.0.0.1 - - [19/Jan/2020 22:08:48] "GET /cgi-bin/hello.py HTTP/1.1" 200 -
127.0.0.1 - - [19/Jan/2020 22:08:49] command: C:\Python34\python.exe -u C:\Pytho
n34\cgi-bin\hello.py ""
127.0.0.1 - - [19/Jan/2020 22:08:49] CGI script exited OK
127.0.0.1 - - [19/Jan/2020 22:08:49] code 404, message File not found
127.0.0.1 - - [19/Jan/2020 22:08:49] "GET /favicon.ico HTTP/1.1" 404 -
127.0.0.1 - - [19/Jan/2020 22:09:23] "GET /cgi-bin/hello.py HTTP/1.1" 200 -
127.0.0.1 - - [19/Jan/2020 22:09:23] command: C:\Python34\python.exe -u C:\Pytho
n34\cgi-bin\hello.py ""
127.0.0.1 - - [19/Jan/2020 22:09:23] CGI script exited OK
127.0.0.1 - - [19/Jan/2020 22:09:48] "GET /cgi-bin/hello.py HTTP/1.1" 200 -
127.0.0.1 - - [19/Jan/2020 22:09:48] command: C:\Python34\python.exe -u C:\Pytho
n34\cgi-bin\hello.py ""
127.0.0.1 - - [19/Jan/2020 22:09:48] CGI script exited OK
127.0.0.1 - - [19/Jan/2020 22:09:55] "GET /cgi-bin/hello.py HTTP/1.1" 200 -
127.0.0.1 - - [19/Jan/2020 22:09:55] command: C:\Python34\python.exe -u C:\Pytho
n34\cgi-bin\hello.py ""
127.0.0.1 - - [19/Jan/2020 22:09:56] CGI script exited OK
127.0.0.1 - - [19/Jan/2020 22:09:56] code 404, message File not found
127.0.0.1 - - [19/Jan/2020 22:09:56] "GET /favicon.ico HTTP/1.1" 404 -
127.0.0.1 - - [19/Jan/2020 22:09:56] code 404, message File not found
127.0.0.1 - - [19/Jan/2020 22:09:56] "GET /favicon.ico HTTP/1.1" 404 -
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
19.01.2020, 19:18
Цитата Сообщение от supmener Посмотреть сообщение
127.0.0.1 - - [19/Jan/2020 22:09:55] "GET /cgi-bin/hello.py HTTP/1.1" 200 -
127.0.0.1 - - [19/Jan/2020 22:09:55] command: C:\Python34\python.exe -u C:\Pytho
n34\cgi-bin\hello.py ""
127.0.0.1 - - [19/Jan/2020 22:09:56] CGI script exited OK
Говорит, что скрипт выполнился и результат отдался браузеру. Пока не закрывай консоль.

В браузере открой инструменты разработчика, вкладку сеть и обнови страницу. Если больше 0 байт, то всё ок.
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,750
19.01.2020, 19:21  [ТС]
Вроде как не больше.
Миниатюры
Python в HTML файлах  
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
19.01.2020, 19:48
Плохо. В файле передаются заголовки?
Python
1
2
3
4
print("Content-type: text/html; charset=utf-8")
print()
 
#дальше основной код...
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,750
19.01.2020, 20:08  [ТС]
Оказывается ошибся. Кое что не так сделал. Страницу выводит сейчас, только похоже с кодировкой какие то проблемы.
Миниатюры
Python в HTML файлах  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.01.2020, 20:08
Помогаю со студенческими работами здесь

Как изменить код html, чтобы такой же код был изменен и в других файлах html
Допустим у меня много файлов html все они имеют идентичный код Хедера, и мне стало нужно внести изменения в вид Хедера. Мне вносить...

Замена текста в файлах HTML
Добрый день. Требуется скрипт, который бы искал и менял текст в файлах html - &quot;//www.site.ru/previews&quot; на &quot;&lt;...

Множественная замена слов в html-файлах
Здравствуйте! Помогите пожалуйста сделать множественную замену слов в большом количестве файлов html. К примеру в папке C:\Documents...

Правильные ли пути ссылок в html-файлах?
Добрый день. В общем суть вопроса: Сделал свой сайт HTML/CSS по учебнику, всего получилось около 20 страниц. Когда верстал то внутри...

Добавление css префиксов во всех html файлах
Все привет! Непосредственно к RegExp для JS это не относится, но, может, поможете. Или админы перенесут в более подходящий раздел. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru