Saltar al contenido

Eliminar el atributo de clase de HTML usando Python y lxml

Solución:

No puedo probar esto en este momento, pero esta parece ser la idea general.

for tag in node.xpath('//*[@class]'):
    tag.attrib.pop('class')

lxml.html.clean.Cleaner funciona, pero necesita una configuración adecuada.

import lxml.html
from lxml.html import clean

html_string = '<p id="test" class="DumbClass">Lorem ipsum dolor sit amet, consectetur adipisicing elit</p>'
tree = html.fromstring(html_string)

cleaner = html.clean.Cleaner()
cleaner.safe_attrs_only = True
cleaner.safe_attrs=frozenset(['id'])
cleaned = cleaner.clean_html(tree)
print(html.tostring(cleaned))

Resulta en :

b'<p id="test">Lorem ipsum dolor sit amet, consectetur adipisicing elit</p>'
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *