Разработка системы автоматического заполнения веб-форм на основе конфигурируемого пользовательского шаблона

page main image

Обзор Компонента заполнения Web-форм

Автоматизированное заполнение Web-форм на базе пользовательского шаблона. Примерами применения могут служить: заполнение форм поисковых систем, заполнение онлайн анкет служб занятости, любые другие задачи требующие заполнения однотипных форм различных интернет сервисов. 

Целевая серверная платформа:  Windows 2003 Server, IIS 6.0 и выше.
Серверный фреймворк:ASP.Net 2.0.
Базы данных:SQL server, Access, MySQL, XML files.
Доступ к данным:ADO.Net, XML parsers.

Особенности бизнес-логики:

Что такое HTTP Request Automation Service (Сервис Автоматизации HTTP-запроса)?

HTTP-RAS это daemon приложение, способное взаимодействовать с интернет-серверами при помощи широко используемого протокола HTTP 1.0/1.1 . Данная служба использует любое установленное подключение к Интернету доступное в операционной системе. HTTP-RAS приложением управляемым сценарием и предоставляет простой интерфейс для управления, обработки и исполнения сценариев коммуникации. 

Что такое коммуникационный сценарий?

Коммуникационный сценарий  это точное описание ресурсов (с определенным URL), которые должны быть запрошены, со всеми параметрами, которые должны передаваться при каждом запросе. Он также содержит дополнительную информацию, такую ​​как HTTP метод, HTTP реферер и сроки выполнения сценария. Коммуникационный сценарий может включать в себя запросы из более одного ресурса. В данном случае запросы подаются один за другим в порядке, указанном в сценарии. 

Почему сценарии?

Сценарий-ориентированная архитектура обеспечивает максимально возможную гибкость при настройке и использовании нашего сервиса. Коммуникационные сценарии кодируются в формате XML и могут быть легко созданы и изменены с учетом потребностей конкретного приложения. Это может быть особенно полезно в крайне нестабильной среде Интернет, при отсутствии контроля над серверами, и они, как правило, часто меняют расположение ресурсов и/или набор необходимых параметров.

Как это работает?

Вы можете запустить задачу этой службы с помощью интерфейса, предоставляемого HTTP-RAS. Задача включает в себя все сценарии коммуникаций предоставляемые администратором. HTTP-RAS имеет неблокирующий интерфейс, т.е. коммуникационное приложение может продолжать работать, в то время как HTTP-RAS заботится о запросе ресурсов с удаленных серверов. Асинхронный характер HTTP-RAS интерфейс вызовов может иметь решающее значение, когда задачи запускаются из скрипта на Интернет-сервере, так как сценарии, как правило, имеют ограниченный срок ожидания. Протокол выполнения задачи хранится на диске (если необходимо). Протокол выполнения задачи сохраняются в XML-формате и содержит информацию о запросах, ответах полученных с удаленного сервера, а также различные сведения о состоянии задачи. Приложение также может доставать подробную информацию о статусе последних задач, которые выполняются (или выполнялись) из постоянного хранилища поддерживаемого HTTP-RAS.

Будучи разработанным для среды с многими потоками, HTTP-RAS может обрабатывать несколько задач одновременно, в то время как количество задач, выполняемых одновременно, ограничено пропускной способностью Интернет-соединения.

Надежность

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