Что нового

Ожидание открытия дополнительной вкладки и слоя в IE

TrustedCo

Новичок
Сообщения
15
Репутация
0
Опыт по AutoIT 4 дня, так что не судите строго...
Скрипт логинится на сайт, забивает фильтры и генерирует отчет, отчет выгружается по времени по разному может за 3 сек. может за 5 мин., в отдельной вкладке IE. Надо дождаться открытия отчета и сохранить его на диск...
Насколько понимаю можно сделать так, но объясните почему в консоли атач происходит без задержки, долбит и долбит, результат кода успешен, но беспокоит, что он долбит так часто, это во-первых, во-вторых может такое быть, что отчет вообще завис, как остановить скрипт при этом аварийно?
Так же примерно такой же механизм на ожидании слоя, который тоже тормозит и появляется когда ему вздумается, это второй код, там я ввел систему попыток еще, но мне кажется не самый лучший вариант.
Заранее всем спасибо!
Код:
; ждем вкладку
$oIE2 = Null
While 1
    $oIE2 = _IEAttach("test.ru", "url")
    If @error = 0 Then
        ExitLoop
    EndIf
    Sleep(20000)
Wend

; ждем слой
$oTry = 0
$oLnkOt = Null
While Not IsObj($oLnkOt) and $oTry <> 3
    Sleep(2000)
    $oTry = $oTry + 1
    $oSpans = _IETagNameGetCollection($oIE, "span")
    for $oSpan in $oSpans
        If StringInStr(_IEPropertyGet($oSpan, "outerhtml"), "Отчеты ALT+R") Then
            $oLnkOt = $oSpan
            ExitLoop
        EndIf
    next
Wend
If $oTry = 3 Then
    Exit
EndIf

Сообщение автоматически объединено:

Народ спасайте, тестировал на открытом сайте, где уже была авторизация и все работало нормально с
Код:
$oIE2 = _IEAttach("test.ru", "url")

А теперь когда запустил скрипт с ноля
Код:
$oIE0 = _IECreate("http://login.ru",0,1,1,1)
$sLogin = 'user'
$sPass = '123'
$oLogin = _IEGetObjByName($oIE0, 'username')
$oPass = _IEGetObjByName($oIE0, 'password')
$oButton = _IEGetObjById($oIE0, 'loginbutton')
_IEFormElementSetValue($oLogin, $sLogin)
_IEFormElementSetValue($oPass, $sPass)
_IEAction($oButton, 'click')
_IELoadWait($oIE0)

то теперь тот, аттач не работает, перепробовал все что можно, не видит и все эту вкладку, соответственно не могу продолжить дальше
Сообщение автоматически объединено:

Добавлю, отработал вариант
Код:
$oIE2 = _IEAttach("[REGEXPTITLE:test.ru; INSTANCE:2]", "Embedded", 1)

REGEXPTITLE:test.ru - маска поиска
INSTANCE:2 - в данном случае понятия не имею
1 - номер вкладки
 
Последнее редактирование:
Верх