Опыт по AutoIT 4 дня, так что не судите строго...
Скрипт логинится на сайт, забивает фильтры и генерирует отчет, отчет выгружается по времени по разному может за 3 сек. может за 5 мин., в отдельной вкладке IE. Надо дождаться открытия отчета и сохранить его на диск...
Насколько понимаю можно сделать так, но объясните почему в консоли атач происходит без задержки, долбит и долбит, результат кода успешен, но беспокоит, что он долбит так часто, это во-первых, во-вторых может такое быть, что отчет вообще завис, как остановить скрипт при этом аварийно?
Так же примерно такой же механизм на ожидании слоя, который тоже тормозит и появляется когда ему вздумается, это второй код, там я ввел систему попыток еще, но мне кажется не самый лучший вариант.
Заранее всем спасибо!
Народ спасайте, тестировал на открытом сайте, где уже была авторизация и все работало нормально с
А теперь когда запустил скрипт с ноля
то теперь тот, аттач не работает, перепробовал все что можно, не видит и все эту вкладку, соответственно не могу продолжить дальше
Добавлю, отработал вариант
REGEXPTITLE:test.ru - маска поиска
INSTANCE:2 - в данном случае понятия не имею
1 - номер вкладки
Скрипт логинится на сайт, забивает фильтры и генерирует отчет, отчет выгружается по времени по разному может за 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 - номер вкладки
Последнее редактирование: