WebBrowser работа с html атрибутами

В этой статье хотелось бы показать несколько простых операций с HTML атрибутами, которые можно выполнить с помощью класса webBrowser. Надеюсь, что Вы уже работали с данным классом или одноименным элементом управления и уже знаете, как получить содержимое html страницы и как дождаться полной загрузки страницы. Поэтому сразу же переходим к основной теме статьи.

Наиболее распространенные задачи с HTML атрибутами

И так для начала создадим Windows Forms приложение, а затем добавим на форму: кнопку, элемент управления webBrowser (wb) и textBox, в который будем выводить изменения, которые произойдут в документе. После чего создадим небольшую, простенькую HTML страницу, которую будем использовать, в качестве шаблона для приведенных ниже примеров.

Здесь же помещу код, который необходимо добавить и выполнить в самом начале любого примера, чтобы получить все HTML элементы с тэгом «p».

Так же обратите внимание, для того чтобы найти, создать, изменить или добавить атрибут class, Вам всегда необходимо указывать имя classname, более подробно об этом можно прочитать здесь.

Если Вам нужно проверить или убедиться в том, что в HTML документе действительно произошли какие-то изменения, то в самом конце любого из примеров добавьте строку, которая позволяет вывести содержимое тега body.

Порядок действий:

  • Поиск элементов с тегом p
  • Код с каким-либо действием над HTML атрибутом
  • Вывод изменений в textBox

Ну, а теперь переходим к задачам.

Как добавить HTML атрибут

В классе webBrowser существует универсальный метод SetAttribute, с помощью которого Вы можете: создать, изменить, удалить или добавить HTML атрибут. Данный метод принимает два параметра: имя атрибута и его значение. Рассмотрим несколько простых примеров.

Добавление нового атрибута по имени class к элементу с тегом «p».

Результат

создание атрибута


Проект codebyOS

Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

Если у элемента уже присутствует html атрибут, но его имя отличается от того имени атрибута, который Вы хотите добавить, то в таком случае так же будет создан и добавлен новый HTML атрибут. Например, внесём небольшое изменение в наш шаблон:

Снова выполним выше описанный код и получим следующий результат:

добавление атрибута

Если же при добавлении нового HTML атрибута имена совпадают, то тогда изменяется значение у существующего атрибута.

Выполним тот же самый код и посмотрим на результат.

Как изменить HTML атрибут

Как уже говорилось чуть ранее, для того, чтобы изменить HTML атрибут, нужно так же воспользоваться методом SetAttribute. Например, снова сделаем небольшое изменение в шаблоне:

А затем изменим текущее значение атрибута class.

Проверка в данном примере используется лишь для демонстрации того, как например, стоило бы поступить, если бы у элемента с тэгом «p» было бы несколько атрибутов и Вам нужно было бы найти какой-то конкретный из них. В данном же примере проверку можно не использовать.

изменение атрибута

Если Вам нужно изменить название атрибута, то тогда Вам сначала нужно создать новый атрибут, а затем удалить старый или наоборот.

Как удалить HTML атрибут

Для того чтобы удалить HTML атрибут, нужно в метод SetAttribute, в качестве второго параметра, передать пустое значение, например, снова не много изменим наш шаблон.

Код:

Результат:

удаление атрибута

Как получить значение атрибута

Чтобы получить значение HTML атрибута необходимо воспользоваться методом GetAttribute, в который необходимо передать имя атрибута. Например, сделаем небольшое изменение в шаблоне.

А затем получим значение атрибута.

Результат: left.

На этом всё, если есть вопросы, то оставляйте их в комментариях.

Читайте также:



Похожие темы

Как получить имя html элемента при наведении мышки... Получение имени html элемента при наведении мышки Сегодня я хочу показать на простом примере, как получить имя html элемента при наведении мышкой в о...
HTML Injection — Web Application Pentesting https://codeby.net/forum/threads/web-application-pentesting-html-injection.59031/ Сегодня мы с вами начнем осваивать базовые понятие инъекция код...
HTTP Digest Аутентитфикация | Web Application Pent... Привет колеги. Добро пожаловать на курс Web Application Pentesting. В этой статье мы с вами поговорим о: Дайджест(Цифровой) Аутентификации. Попыт...
Как работать с классом WebBrowser?... Пример работы с классом WebBrowser В комментариях многие просят показать или рассказать, как работать с классом webBrowser, а не с одноимённым элемен...
Web Application Pentesting | методы HTTP запросов... Добро пожаловать на курс Web Application Pentesting. В этой статье мы с вами научимся: Вручную посылать запросы на веб сервер через консольную утил...