Busque y elimine las etiquetas HTML especificadas usando Html Agility Pack

html-agility-pack

Pregunta

Estoy tratando de hacer que el Paquete de Agilidad Html funcione en mi caso. Necesito detectar todos los elementos de script en una página HTML existente y eliminarlos, guardando los cambios en otro archivo. Aquí, bodyNode devuelve el número correcto de etiquetas de script, pero no puedo eliminarlas. El nuevo archivo todavía tiene esas etiquetas.

if (doc.DocumentNode != null)         
{
     var bodyNode = doc.DocumentNode.SelectNodes("//script");          
     if (bodyNode != null)             
     {
          bodyNode.Clear(); // clears the collection only                    
     } 

     doc.Save("some file");        
 }

Respuesta aceptada

Necesitas hacer algo como esto:

foreach(HtmlNode node in bodyNode)
{
   node.ParentNode.RemoveChild(node);
}



Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué