Найти и удалить указанные теги HTML с помощью Html Agility Pack

html-agility-pack

Вопрос

Я пытаюсь заставить Html Agility Pack работать в моем случае. Мне нужно обнаружить все элементы сценария на существующей странице HTML и удалить их, сохранив изменения в другом файле. Здесь bodyNode возвращает правильное количество тегов скрипта, но я не могу их удалить. В новом файле все еще есть те теги.

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

     doc.Save("some file");        
 }

Принятый ответ

Вам нужно сделать что-то вроде этого:

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


Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему
Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему