Лучший способ автоматизации сайта?

Позвольте мне перефразировать вопрос …

Вот сценарий: как страховой агент вы постоянно работаете с несколькими страховыми сайтами. Для каждого веб-сайта мне нужно войти в систему и вытащить клиента. Я ищу автоматизировать этот процесс.

В настоящее время у меня есть решение, созданное для iMacros, но для этого требуется загрузка / установка.

Я ищу решение с использованием платформы .NET, которая позволит пользователю предоставлять свои учетные данные и информацию о клиенте, и я смогу автоматизировать этот процесс для них.

Это будет включать знание каждого конкретного веб-сайта, и это будет хорошо, я буду иметь всю эту информацию.

Я хотел бы, чтобы этот процесс мог происходить в фоновом режиме, а затем запускать веб-сайт пользователю после выполнения действия.

Используйте Ватина . Это библиотека .NET с открытым исходным кодом для автоматизации IE и Firefox. Это намного проще, чем манипулировать необработанными HTTP-запросами или взломать элемент управления WebBrowser, чтобы делать то, что вы хотите, и вы можете запускать его из консольного приложения или службы, поскольку вы упомянули, что это не будет приложение WinForms.

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

Вы можете попробовать следующие инструменты:

  • StoryTestIQ
  • Селен
  • Watir
  • Схема тестирования ветряных мельниц
  • Веб-тесты Visual Studio

Это автоматизированные средства тестирования / frameworks, которые позволяют писать автоматические тесты с точки зрения пользовательского интерфейса и проверять результаты.

В прошлом я делал это с помощью элемента управления WebBrowser внутри приложения winforms, которое я выполняю на сервере. Элемент управления WebBrowser позволит вам получить доступ к элементам html на странице, вводить информацию, кнопки / ссылки на кнопки и т. Д. Это должно позволить вам выполнить свою задачу.

Есть способы сделать это без управления WebBrowser, посмотрите на пакет гибкости HTML .

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

Используйте HttpWebRequest (?) Для создания сообщения формы, содержащего соответствующие поля формы и данные из вашей модели, и отправьте запрос. Получите и проанализируйте ответ, сохраните cookies, поскольку вам нужно будет повторно отправить файл cookie на следующий запрос. Сформулируйте следующий запрос на основе результатов первого запроса (не забудьте приложить cookies при необходимости) и отправьте его. Получите ответ и покажите или проанализируйте и покажите (в зависимости от того, чего вы надеетесь достичь).

Вы говорите, что это не клиентское приложение, поэтому я буду считать веб-приложение. Недостатком этого является то, что после того, как вы начнете проксирование запросов для пользователя, вам придется всегда проксировать эти запросы, поскольку вам не удастся перенести cookies сеанса с целевого сайта на пользователя, и нет (простой / простой / логический) способ для входа пользователя на целевой сайт, а затем передачи файла cookie вам.

Обычно, пытаясь сделать такую ​​интеграцию, люди будут использовать какую-то форму опубликованного API для взаимодействия с компаниями / системами, о которых идет речь, поскольку они предназначены для типа взаимодействий, о котором вы говорите.

Мне непонятно, с какими трудностями вы хотите общаться, когда писали:

В настоящее время у меня есть решение, созданное для iMacros, но для этого требуется загрузка / установка.

Я думаю, что здесь есть некоторые ваши требования, о которых вы не являетесь явным. Вам, безусловно, нужно «загрузить / установить» вашу .Net-программу на компьютерах вашего клиента. Итак, какая разница?

Во всяком случае, Кроубер кажется многообещающим:

Crowbar – это веб-скребковая среда, основанная на использовании браузера на основе браузера на основе Mozilla без гарнитуры.

Его цель – разрешить скремблеры javascript против DOM, чтобы автоматизировать очистку веб-сайтов, но избегая всех проблем с нормализацией синтаксиса.

Для людей, не знакомых с этой терминологией: «javascript scrapers» здесь означает нечто вроде макроса iMacros, используемого для извлечения информации с веб-сайта (в конце это Javascript-программа, с какой целью вы ее используете. Я не думаю, что разница).

дизайн

Crowbar реализован как (довольно простое) приложение XULRunner, которое предоставляет веб-службу HTTP RESTful, реализованную в javascript (в основном, преrotation веб-браузера в веб-сервер!), Который вы можете использовать для «удаленного управления» браузером.

Я не знаю, можно ли расширить этот браузер без браузера с помощью надстроек, таких как обычная установка Firefox. В таком случае вы даже можете использовать свои macros iMacros (или использовать CoScripter ) с соответствующей упаковкой.

Чем больше я об этом думаю, тем больше я чувствую, что это сложное решение для того, что вы написали, чего хотите достичь. Поэтому, пожалуйста, уточните.