La creación de HTML a veces puede ser una tarea tediosa, difícil de depurar y propensa a errores. Una forma de resolver esto es usar alguna biblioteca que pueda encargarse del div de apertura y cierre, etc., lo que puede reducir las posibilidades de errores. Usaremos el módulo tinyhtml para este propósito.
Este módulo proporciona un conjunto de clases útiles para renderizar html5 utilizando código Python y permite agrupar varias etiquetas HTML. También ayuda a publicar HTML sin formato sin formato, lo que proporciona la funcionalidad de bucles o conversiones de tipo mediante constructores.
Instalación
Para instalar este módulo, escriba el siguiente comando en la terminal.
pip install tinyhtml
Funciones utilizadas
- html() : Marca el comienzo del código html.
- h() : la mayoría de las funciones de utilidad, permite renderizar atributos, elementos normales y elementos anulados/de cierre automático.
- raw() : se usa para imprimir strings html sin escape.
- frag() : Agrupa varias etiquetas HTML juntas.
- render() : procesa y convierte el html de entrada.
Ejemplo 1:
Python3
from tinyhtml import html, h # Constructing HTML using html() and h() # nested h() is also supported html_content = html(lang="en")( h("head")( (h("h1")("hello Geeks!!")), ), ).render() # printing html formed on console. print(html_content)
Producción:
Ejemplo 2: Uso de raw() y frag()
Python3
from tinyhtml import html, h, frag, raw # using frag() to group to h fncs. print("Working of frag() : ") html_content = html(lang="en")( frag(h("h1")("Welcome to GFG"), h("p")("This\ is one among best ever coding site you've been\ to.."))).render() print(html_content) print("\n") # prints raw unescaped HTML. print("The unescaped HTML raw content : ") print(raw('<h1>Printing Raw HTML</h1> <p> Dont escape <<>>>> </p> '))
Producción :
Ejemplo 3: uso de clases y etiquetas como HTML
En esto, usamos el operador » klass » para inicializar una clase. Y para otras etiquetas que pueden coincidir con el nombre de las palabras clave reservadas de Python, se agrega un guión bajo al final.
Python3
from tinyhtml import h # using klass to initialize class print("Working with Class : ") class_inp = h("div", klass="gfg")() print(class_inp) # using _ to escape for loop operator print("Working with label and escaping keyword : ") label_inp = h("label", for_="geeksforgeeks")("GFG") print(label_inp)
Producción :
Ejemplo 4: trabajar con bucles y condicionales
La representación de contenido HTML que requiere bucles como elementos de lista y condicionales también es posible mediante bucles y condicionales básicos de Python.
Python3
from tinyhtml import h # initializing loop elements print("Using loop elements : ") looped_element = h("ul")(h("li")(idx) for idx in range(5)) print(looped_element) print("\n") # using conditionals print("Using conditional elements : ") conditional_element = h("ul")( h("li")("Gfg") if False else "GFG", h("li")("Geeks")) print(conditional_element)
Producción :
Ejemplo 5: Plantillas de HTML usando funciones
Python3
from tinyhtml import h, html, frag # function to create layout. # advantage is that this can be reused. def create_layout(title, body): return html()( h("head")( h("title")(title), ), h("body")(body) ) # calling function to create layout. layout = create_layout("Gfg Templating", frag( h("h1")("Demo Heading"), h("p")("Making fragment to demo templating layout"), )) print("Created layout : ") print(layout)
Producción :
Publicación traducida automáticamente
Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA