[Решение] Удалить нужные элементы из HtmlElement

Dmitriy Ka

Client
Регистрация
03.05.2016
Сообщения
549
Благодарностей
304
Баллы
63
Была задача удалить лишние элементы из кода, долго мучался с этой задачей и пришел к такому решению.
Например нужно удалить из HTML элементы со скриптами и стилями.

C#:
var tab = instance.ActiveTab;

var body = tab.FindElementByXPath("//body", 0);
var tags = new[] { "script", "noscript", "style"};

foreach (var tag in tags)
{
    var arrHe = body.FindChildrenByTags(tag); //Собираем по тегу елементы которые хотим удалить
    foreach (var he in arrHe) //Начинаем удалять элементы
    {
        he.ParentElement.RemoveChild(he); //Обращаемся к родителю элемента и у него удаляем наследника, который и будет являтся нужный нам элемент
    }
}

var result = body.OuterHtml;
Вместо метода FindChildrenByTags, можно использовать поиск через xPath, если надо удалить определенные div (//div[contains(@class, 'svg')])
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)