Как пройти правильно basic browser authentication ' в IE с помощью AutoIt в watir/ruby

Привет.
Столкнуля с такой ситуацией: нужно пройти ’ basic browser authentication ’ в IE
Для этого записал скрипт в autoit. если делать все ручками то оно работет(заполнет форму)

и теперь возник вопрос как запустить это все что б оно работало.
Делаю так:

require 'watir'
@browser = Watir::Browser.new :ie
@browser.cookies.clear
@browser.window.maximize
@browser.goto 'https://mysite.com'
sleep (5)
exec("C:\\authwibdow.exe")

скрипт в Autoit выглядит так:

WinWaitActive("Windows Security","")
Send("username{TAB}password{ENTER}")

открываеться браузер.
открываеться сайт и ждет пока ввиду username and password в popup и соотвествено autoit фалй не запускаеться.

Пробовал менять местами: сначало exec файл, потом @browser.goto… тоже не работает :frowning:

Не судите строго… опыт неделя в автоматизации…

решил проблему вот так:
output = IO.popen(“C:\authwibdow.exe”)
если вот так щапускать AutoIt скрипт - то все работает.

Sleep(3000)
WinWaitActive(“Windows Security”,"")
Send(“username{TAB}password{ENTER}”)

вставьте сначала
или название окна не правильное
найдите при помощи детектора окон аутоит

1 лайк

Пробовали через url?
https://user:password@www.example.com

2 лайка

Да, у меня так в в Chrome and FF работет. в IE11 не работает(

Кстати, обновил хром до 59 версии, теперь когда я открываю ссылку в нем такого типа:
https://user:password@www.example.com

то стили не грузятся… у кого такое еще есть? как лечить? откатить на пердыдущую версию?

Ребята, AutoIt это зло злейшее:

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

Для вашей задачи правильный способ - browsermob proxy (GitHub - lightbody/browsermob-proxy: A free utility to help web developers watch and manipulate network traffic from their AJAX applications.)

Первая попавшаяся стаття в гугле про это (Bypassing Basic Authentication Using the BrowserMob Proxy - Softensity)

3 лайка