Проект codebyOS

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

Программное заполнение полей html формы

Сегодня хочу показать на просто примере, как заполнить поля html формы с помощью приложения написанного на языке c#

Подготовка

Создадим новый проект типа Windows Forms Application.

Добавим на форму: два текстовых поля (txtName и txtLastName), кнопку и control WebBrowser (wb).

Windows Form

Для работы нам понадобиться тестовая HTML страница, например такого вида:

html форма

Работа с полями HTML формы

1. Для начала нужно загрузить страницу в WebBrowser.

2. Затем нужно дождаться полной загрузки страницы. Для этого подписываемся на событие DocumentCompleted.

Поле ввода, расположенное на странице, представляет собой HTML элемент, состоящий из одиночного тега input. Тип поля, а также некоторые другие параметры элемента, задаются с помощью атрибутов. Например: HTML атрибут value — хранит значение поля, name — содержит имя элемента и так далее.

Как получить значение поля input?

1. Находим на странице html элемент, который содержит тег input.

2. С помощью метода GetAttribute получаем значение атрибута value.

результат

форма с полями



Как заполнить поле input?

Если же вам нужно заполнить поле input HTML формы, то тогда вместо метода GetAttribute воспользуйтесь методом SetAttribute, например:

результат

заполненные поля

Динамическое заполнение полей

В предыдущем примере заполнение полей HTML формы производилось с помощью заранее заданных значений, но так же заполнить поля можно и динамически.

Например, я хочу, чтобы при вводе данных в текстовое поле (textBox) автоматически изменялось значение соответствующего поля на странице.

1. Создадим переменную inputs типа HtmlElementCollection.

2. Загружаем html страницу в элемент управления WebBrowser.

3. Получаем коллекцию всех полей формы.

4. Подписываемся на событие TextChanged, элемента управления textBox, и в обработчике данного события изменяем содержимое поля.

результат

динамические поля

Для отправки данных нужно нажать на кнопку на форме, о том, как это сделать программно, можно прочитать, перейдя по ссылке.

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


Проект codebyOS

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

Похожие темы

Web Application Pentesting | Атаки на HTTP Basic A... Привет колеги. Добро пожаловать на курс Web Application Pentesting. В этой статье мы с вами поговорим о: Вспомним немного заголовки ответа серв...
Pentesting web-сервера Всем привет! В этой статье я уделю внимание WEB-серверам и протоколу HTTP. HTTP— протокол прикладного уровня основной задачей, которого является о...
Как получить имя html элемента при наведении мышки... Получение имени html элемента при наведении мышки Сегодня я хочу показать на простом примере, как получить имя html элемента при наведении мышкой в о...
Control WebBrowser. Часть 2: События Control WebBrowser. Часть 2: События В предыдущей статье было продемонстрировано, как получить данные в виде html страницы и вывести их в окно элемен...
HTTP Cookies | Web Application Pentesting Добро пожаловать на курс Web Application Pentesting колеги. Сегодня мы поговорим с Вами о куки(Cookie). Сразу же хочу предупредить , что у Виве...