Что нового

Как ждать текст?

tar

Новичок
Сообщения
58
Репутация
0
Здравствуйте, вместо Rolling in могут быт другие символы, но мне нужно ждать
Код:
<h4 class="rollTimer h4">Rolling in 7.78</h4>
когда появится Rolling in выполнить это
Код:
$oInputs = _IETagNameGetCollection($oIE, 'button')
            For $oinput In $oInputs
                If $oinput.classname == 'put_bet_btn pure-button pure-button-black width-100' Then
                    _IEAction($oinput, 'click')
					; $n_n += 1
                EndIf
            Next
;EndIf
_IELoadWait($oIE)

пробовал
Код:
$sHtml = _IEBodyReadHTML($oIE)

If StringInStr($sHtml, "Rolling in") > 0 Then
;
  $oInputs = _IETagNameGetCollection($oIE, 'button')
            For $oinput In $oInputs
                If $oinput.classname == 'put_bet_btn pure-button pure-button-black width-100' Then
                    _IEAction($oinput, 'click')
					; $n_n += 1
                EndIf
            Next
;EndIf
_IELoadWait($oIE)
но надо как то в цикле ждать. Помогите
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
Код:
;Wait...
Do
	$sHtml = _IEBodyReadHTML($oIE)
Until StringInStr($sHtml, "Rolling in")

;Do what we need
 
Автор
T

tar

Новичок
Сообщения
58
Репутация
0
CreatoR
Текст, ожидаемый, может не появиться. Как прервать цикл ожидания через 90 секунд, если текст не появился?
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
tar [?]
Как прервать цикл ожидания через 90 секунд, если текст не появился?
Код:
;Wait...
$iTimer = TimerInit()

Do
    $sHtml = _IEBodyReadHTML($oIE)
Until StringInStr($sHtml, "Rolling in") Or (TimerDiff($iTimer) >= (90 * 1000))
;Do what we need
 
Автор
T

tar

Новичок
Сообщения
58
Репутация
0
Другой текст может появиться. Как ждать любой из вариантов?
Если появился текст "Rolling in" то вызвать функцию Re_dat(), появился текст "No Roll", вызвать функцию Re_dat_1()
 

IMStrelcov

CTPEJIbLLOB
Сообщения
253
Репутация
64
Код:
$iTimer = TimerInit()

While TimerDiff($iTimer) < (90 * 1000)
	Sleep(100);пауза 100 милисек. или 0.1 сек. чтобы сильно проц не грузило (можно удалить)
    $sHtml = _IEBodyReadHTML($oIE)
	If StringInStr($sHtml, "Rolling in") Then
		;Re_dat()
		ExitLoop;выход из цикла
	ElseIf StringInStr($sHtml, "No Roll") Then
		;Re_dat_1()
		ExitLoop;выход из цикла
	EndIf
WEnd

; и так далее добаляешь любое кол-во раз
;	ElseIf StringInStr($sHtml, "любой другой текст") Then
;		функция для выполнения
;		ExitLoop выход из цикла
 
Верх