我正在寻找一个轻松实现的Python生成器的Python。我发现这一个python html生成器
http://www.decalage.info/python/html
但是没有办法为表添加css元素(id,class)。
THX
我正在寻找一个轻松实现的Python生成器的Python。我发现这一个python html生成器
http://www.decalage.info/python/html
但是没有办法为表添加css元素(id,class)。
THX
如果你想要程序化生成而不是模板化,Karrigell的HTMLTags模块是一种可能性;它可以包括例如在class
属性(这将是Python中的保留字)由uppercasing其初始,即引述文件的网址我刚给的伎俩:
属性具有相同的名称作为 Python的关键字(类,类型)必须 大写:
print DIV('bar', Class="title") ==> <DIV class="title">bar</DIV>
实际上,您可以将任何属性(如id和class)添加到HTML.py(http://www.decalage.info/python/html)中的对象。
attribs是Table,TableRow和TableCell类的可选参数。这是一个你想设置的附加属性的字典。例如,下列代码将ID和类的表:
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速记,只需要几分钟的时间来学习。还有一个名为SASS的CSS版本。关于Python和HAML多一点
http://haml.hamptoncatlin.com/
“Is there a HAML implementation for use with Python and Django” 会谈。
我在Ruby编程时尽可能地使用HAML。而且,作为一个注脚,还有的也一直是Perl的一些工作得到模块与漂亮的MVC Mojolicious工作:
这是一个超简单的HTML生成我已经写了。我使用它构建时间来生成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 2009-10-10 20:50:43