generador html de python

Estoy buscando un generador html de python de fácil implementación. Encontré este

http://www.decalage.info/python/html 

pero no hay manera de agregar elementos css (id, clase) para la tabla.

Gracias

Si desea una generación programática en lugar de plantillas, el módulo HTMLTags de Karrigell es una posibilidad; puede incluir, por ejemplo, el atributo de class (que sería una palabra reservada en Python) mediante el truco de subir su inicial, es decir, citar la URL del documento que acabo de dar:

Los atributos con el mismo nombre que las palabras clave de Python (clase, tipo) deben estar en mayúsculas:

 print DIV('bar', Class="title") ==> 
bar

La generación de HTML generalmente se realiza con una de las infinitas cantidades de lenguajes de plantillas HTML disponibles para Python. Personalmente me gusta Templess , pero Genshi es probablemente el más popular. Hay cantidades infinitas de ellos, hay una lista que es muy probable que esté incompleta.

De lo contrario, es posible que desee utilizar lxml , donde puede generarlo de manera más programática en XML. Aunque me cuesta mucho ver el beneficio.

Dominate es una biblioteca de generación de HTML que te permite crear tags fácilmente. En dominate, las palabras reservadas de python tienen un guión bajo como prefijo, por lo que se vería así:

 from dominate.tags import * t = div(table(_id="the_table"), _class="tbl") print(t) 

Descargo de responsabilidad: soy el autor de dominar

Está el venerable HTMLGen de Robin Friedrich, que es difícil de encontrar pero todavía está disponible aquí (con fecha de 2001, pero el HTML no ha cambiado mucho desde entonces ;-). También hay xist . Por supuesto, hoy en día la generación de HTML, como señala Lennart, generalmente se hace mejor utilizando sistemas de plantillas como Jinja o Mako .

Este es un generador de HTML ultra simple que he escrito. Lo uso tiempo de construcción para generar html. Si uno está generando páginas html en tiempo de ejecución, hay mejores opciones disponibles.

Aqui esta el link

http://pypi.python.org/pypi/sphc

Y un ejemplo rápido.

 >> import sphw >> tf = sphw.TagFactory() >>> div = tf.DIV("Some Text here.", Class='content', id='foo') >>> print(div) 
Some Text here.

Ok, aquí hay otro generador html, o prefiero considerarlo como un comstackdor.

https://pypi.python.org/pypi/python-html-compiler

Este es un conjunto de clases base que se pueden usar para definir tags y atributos. Así, una clase de etiqueta tiene atributos e hijos. Los niños son ellos mismos Clases de tags que tienen atributos e hijos, etc. También puede establecer parámetros que comiencen con su clase raíz y desarrollar las distintas twigs.

Esto le permitirá definir todas las clases de tags que desee, por lo que podrá crear clases personalizadas e implementar las tags o atributos que desee.

Acabo de empezar con esto, así que si alguien quiere probar 🙂

En realidad, puede agregar cualquier atributo como id y class a los objetos en HTML.py ( http://www.decalage.info/python/html ).

attribs es un parámetro opcional de las clases Table, TableRow y TableCell. Es un diccionario de atributos adicionales que le gustaría establecer. Por ejemplo, el siguiente código establece id y class para una tabla:

 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 

El mismo parámetro se puede usar con los objetos TableRow y TableCell para formatear filas y celdas. Todavía no existe para las columnas, pero debería ser fácil de implementar si es necesario.

Quizás te interesen algunas de las implementaciones de Python HAML. HAML es como la abreviatura de HTML y solo toma unos minutos para aprender. También hay una versión CSS llamada SASS.

http://haml.hamptoncatlin.com/

” ¿Existe una implementación de HAML para usar con Python y Django? ” Habla sobre Python y HAML un poco más.

Estoy usando HAML tanto como sea posible cuando estoy progtwigndo en Ruby. Y, como nota a pie de página, también se ha trabajado en la obtención de módulos para Perl que funcionan con el simpático MVC Mojolicious:

http://metacpan.org/pod/Text::Haml

Generación de HTML o cualquier generación de texto, jinja es un potente motor de plantillas.