|
タグが次のような画像ボタンを配置されたページがあります。 <img width="100" height="28" alt="前へ" src="/image/btn/btn01.png"> ページを開いてから
Repeat Sleep(0.1) UNTIL !IE.busy AND IE.readyState = 4 IESetData(IE,True,"TAG=IMG","/image/btn/btn01.png") としますと、読み込みが完了する前にクリックしてしまい空振ってしまいます。
Sleep(5) 〜 Sleep(10) IESetData(IE,True,"TAG=IMG","/image/btn/btn01.png") としますと、普通にクリックしてくれます。
画像ボタンが、bmpならば WHILE (CHKIMG("xxx.bmp")=FALSE) SLEEP(0.5) WEND IESetData(IE,True,"TAG=IMG","/image/btn/xxx.bmp") とすれば、良いというところまでは分かったのですが、pngなのでCHKIMG関数が使えません。
このような場合、どのようにすれば良いのでしょうか? 宜しくお願い致します。
|
No.1961 2015/12/16(Wed) 23:24:11
|
☆ Re: / stuncloud |
|
|
動的に描画されるページの場合は、以下の様な感じで対象が描画されるのを待つようにしています
img = WaitForElement(ie.document, "img[src=<#DBL>/image/btn/btn01.png<#DBL>]") // 対象imgタグが出てくるのを待つ img.click()
function WaitForElement(base, selector) result = NULL repeat sleep(0.2) result = base.querySelector(selector) until result <> NULL fend
|
No.1962 2015/12/17(Thu) 11:32:10
|
|
☆ Re: / しろまさ |
|
|
Pro版付属のRecIE.exeが生成するBusyWait関数が優秀なので、試してみては?
|
No.1963 2015/12/17(Thu) 11:35:23
|
|
☆ Re: / きのこ |
|
|
stuncloud さん 素晴らしい、メモメモ!
しろまさ さん BusyWait() を入れて、更にSleep(3)とかってやっていましたが、空振る時がでてきてSleepがどんどん長くなっていきました。
|
No.1965 2015/12/17(Thu) 16:44:32
|
|