Я ищу легко реализованный генератор html для python. Я нашел этотpython html generator
http://www.decalage.info/python/html
но нет возможности добавить элементы css (id, class) для таблицы.
ТНХ
Я ищу легко реализованный генератор html для python. Я нашел этотpython html generator
http://www.decalage.info/python/html
но нет возможности добавить элементы css (id, class) для таблицы.
ТНХ
Если вы хотите программную генерацию, а не шаблон, модуль Karrigell's HTMLTags - одна из возможностей; он может включать, например, атрибут class
(который будет зарезервированным словом в Python) с помощью трюка в верхнем регистре его инициал, то есть, со ссылкой на ЕЕ URL Я просто дал:
атрибутов с тем же именем в качестве ключевых слов Python (класса, типа) должны быть капитализируются:
print DIV('bar', Class="title") ==> <DIV class="title">bar</DIV>
HTML поколения обычно делается с одной из бесконечных сумм языков шаблонных HTML, доступных для Python. Лично мне нравится Templess, но Genshi, вероятно, самый популярный. Их бесконечное количество, есть list, который, скорее всего, будет неполным.
В противном случае вы можете использовать lxml, где вы можете сгенерировать его более программным способом XML-ish. Хотя я с трудом вижу эту выгоду.
Там же почтенный HTMLGen Робин Фридриха, который трудно найти, но по-прежнему доступны here (датированный 2001, но HTML не сильно изменился с тех пор ;-). Также есть xist. Конечно, в настоящее время генерация HTML, как указывает Леннарт, обычно лучше делать с использованием систем шаблонов, таких как Jinja или Mako.
В настоящее время? Python templating существует по крайней мере с DTML, 1997. :) ZPT, который лучше с 2001 года. :) [Just nitpicking] –
На самом деле вы можете добавить любые атрибуты, такие как id и class, к объектам в HTML.py (http://www.decalage.info/python/html).
атрибуты - необязательный параметр классов Table, TableRow и TableCell. Это словарь дополнительных атрибутов, которые вы хотите установить. Например, следующий код задает идентификатор и класс для таблицы:
import HTML
table_data = [
['Last name', 'First name', 'Age'],
['Smith', 'John', 30],
['Carpenter', 'Jack', 47],
['Johnson', 'Paul', 62],
]
htmlcode = HTML.table(table_data,
attribs={'id':'table1', 'class':'myclass'})
print htmlcode
В тот же параметр может быть использован с TableRow и TableCell объектов строк и ячеек формата. Он еще не существует для столбцов, но при необходимости его легко реализовать.
Возможно, вас заинтересует некоторые реализации Python HAML. HAML похож на HTML-стенографию и занимает всего несколько минут, чтобы узнать. Также есть версия CSS SASS.
http://haml.hamptoncatlin.com/
"Is there a HAML implementation for use with Python and Django" говорит о Python и Haml немного больше.
Я использую HAML как можно больше, когда программирую в Ruby.И, как примечание, там также некоторые рабочие получают модули для Perl, которые работают с хорошей MVC Mojolicious:
Это один ультра-простой HTML генератор я написал. Я использую его build-time для генерации html. Если один генерирует HTML-страницы во время выполнения, то есть лучшие варианты
Вот ссылка
http://pypi.python.org/pypi/sphc
И быстрый пример
>> import sphw
>> tf = sphw.TagFactory()
>>> div = tf.DIV("Some Text here.", Class='content', id='foo')
>>> print(div)
<DIV Class="content", id="foo">Some Text here.</DIV>
Dominate является библиотека генерации HTML, который позволяет легко создавать теги. В властвуй, питон зарезервированные слова начинаются с подчеркивания, поэтому он будет выглядеть следующим образом:
from dominate.tags import *
t = div(table(_id="the_table"), _class="tbl")
print(t)
<div class="tbl">
<table id="the_table"></table>
</div>
Отказ от ответственности: я являюсь автором властвуй
Хорошо, вот еще один HTML-генератор, или я предпочитаю думать его как компилятора.
https://pypi.python.org/pypi/python-html-compiler
Это набор базовых классов, которые могут быть использованы для определения тегов и атрибутов. Таким образом, класс тега имеет атрибуты и дочерние элементы. Дети сами являются тегами, которые имеют атрибуты и дети и т. Д. Также вы можете установить параметры, которые начинаются с вашего корневого класса и обрабатывать различные ветви.
Это позволит вам определить все классы тегов, которые вы хотите, чтобы создать настраиваемые классы и реализовать любые теги или атрибуты, которые вы хотите.
Только начал на этом, так что если кто-то хочет проверить :)
Как и в сторону: Genshi является шаблонный движок, используемый Trac. – retracile