Ручной ввод капчи в браузере Internet Explorer

Ручной ввод капчи в браузере Internet Explorer используется в случае, если:

  • капча появляется редко (несколько раз) за весь процесс парсинга
  • для парсинга используется браузер Internet Explorer (например, парсер выполняет заполнение сложных форм, или сайт полон скриптов, и без браузера не обойтись)

При появлении на очередной странице капчи, парсер временно отображает окно браузера, где вы вручную вводите капчу, а потом переключаетесь обратно в Excel, и нажимаете кнопку Продолжить
Этот вариант применим для любого вида капч.

Рассмотрим порядок действий по решению такой капчи:

  • открываем страницу в Internet Explorer (IE работает обычно в скрытом режиме, т.е. он не виден пользователю)
  • выполняем проверку, есть ли на странице капча
  • если капча есть, передаём управление набору действий, в котором:
    • отображаем окно браузера
    • выводим поверх Excel сообщение (MsgBox) с текстом «Нажмите ОК для продолжения»
      (это нужно, чтобы временно приостановить работу парсера, до тех пор, пока капча будет введена)
    • <далее парсер перейдет только после нажатия ОК, т.е. подразумевается, что пользователь решил капчу>
      считываем HTML код из Internet Explorer (теперь там уже страница с данными, без капчи)

 

Настройка действий по обработке исходных данных:

Cначала прогружаем страницу в IE, потом при наличии на странице текста «Какой код на картинке» передаём управление набору действий, который тормозит парсер на время ввода капчи), потом продолжаем работу со страницей сайта (например, ищем заголовок H1)

Действие Параметр Значение
Открыть веб-страницу в Internet Explorer URL http://ExcelVBA.ru/test_captcha
Маска для проверки HTML-кода страницы  
Проверка на выполнение условия Режим проверки содержит
Значение для сравнения Какой код на картинке
Действие при выполнении условия Выполнить набор действий
Параметр действия Показать IE
Проверять другое значение  
Другое проверяемое значение  
HTML: Поиск тегов Тип элемента h1
Название проверяемого атрибута  
Значение проверяемого атрибута  
Тип результата / извлекаемый атрибут ConvertToText 1

 

Содержимое набора действий с названием «Показать IE»:

Отображаем браузер, блокируем работу Excel выводом сообщения, скрываем браузер после нажатия на сообщении в Excel, переподключаемся к IE для получения актуального HTML кода страницы (который изменился после ввода капчи)

 

Действие Параметр Значение
Отобразить / скрыть Internet Explorer Отобразить или скрыть отобразить
INFO: Вывод сообщения (MsgBox) Текст сообщения Нажмите ОК для продолжения
Заголовок сообщения Требуется ввод капчи
Тип сообщения + кнопки 0 = OK
Возвращать нажатую кнопку  
Отобразить / скрыть Internet Explorer Отобразить или скрыть скрыть
Подключиться к запущенному Internet Explorer URL *ExcelVBA.ru*
Активировать окно IE нет