Paranoid - курс от Codeby Security School

Представляем вашему вниманию курс от команды codeby - "Комплекс мер по защите персональных данных, анонимности в интернете и не только" Подробнее ...


Программное заполнение полей 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.

результат

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


Codeby Security School от Сodeby

Мы запустили свою онлайн школу по информационной безопасности. Защита персональных данных, анонимность в сети интернет, настройка виртуальных машин, безопасная передача данных, анти форензика и еще много всего полезного в курсе Paranoid


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

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

результат

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

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

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

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

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

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

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

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

результат

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

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

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


Безопасная сделка с гарантом Сodeby

Гарант является доверенным посредником между Участниками при проведении сделки.​ Услуга сайта «Проведение сделок через Гаранта» предоставляется всем зарегистрированным пользователям codeby.net Подробнее ...


Похожие темы

c# Как найти элемент с атрибутом id?... Поиск html элемента с атрибутом id Сегодня хочу показать на простом примере, как найти элемент с атрибутом id с помощью класса WebBrowser. Исходны...
Как развернуть у себя на десктопе полноценный веб ... Хочу показать в этой статье как очень легко и без особых знаний развернуть у себя на десктопе полноценный веб сервер, для своих нужд. Очень подойдет...
Как получить исходный код страницы в c#?... Как получить исходный код страницы с помощью класса WebBrowser? В этой статье рассмотрим на простом примере, как получить исходный код страницы помощ...
c# Создание веб-сервера (дополнение)... Создание веб-сервера на языке c# (дополнение) Данная статья является дополнением к предыдущей статье: как создать веб-сервер с помощью языка c#. В не...
Control WebBrowser. Часть 2: События Control WebBrowser. Часть 2: События В предыдущей статье было продемонстрировано, как получить данные в виде html страницы и вывести их в окно элемен...