2013-09-03 12 views
0

VBScript를 사용하여 웹 응용 프로그램을 자동화하고 있습니다. 이제 내 문제는 웹 페이지에서 링크 나 단추를 클릭하면 웹 페이지를로드하는 데 시간이 걸리지 만 URL은 일정하게 유지된다는 것입니다. 그래서 스크립트는 로딩이 완료 될 때까지 기다려야합니다.웹 페이지에 이미지가 있는지 확인하십시오.

다음 코드는 나에게 도움이되지 않습니다 페이지가 로딩 될 때

사실
Do While objIE.Busy 
    DoEvents 
Loop 

는, 이미지 (로딩 표시)는 웹 페이지에 표시됩니다. 그래서 이미지를 식별하고 이미지가 페이지에 존재할 때까지 기다린 다음 계속하려고합니다.

Do while Image (Loading-Indicator).exists 
    DoEvents 
Loop 

가 가능 :

내가 좋아하는 어떤 것을 원하는?

답변

0

원하는 것은 불가능합니다. READYSTATE_COMPLETE에 도달하지 않으면 페이지 내용에 액세스 할 수 없으므로 Busy 속성의 값은 False이됩니다. 당신은 페이지로드를 기다린하는

Do While objIE.Busy 
    WScript.Sleep 100 
Loop 

또는

Do Until objIE.ReadyState = 4 
    WScript.Sleep 100 
Loop 

를 사용할 수없는 이유

설명하십시오.


편집 : ID loadind<img> 요소가 긴으로 표시됩니다

'wait for page content to become accessible 
Do Until objIE.ReadyState = 4 
    WScript.Sleep 100 
Loop 

'wait for application to finish starting 
Do Until IsNull(objIE.document.getElementById("loadind")) 
    DoEvents 
Loop 

경우 : 응용 프로그램이 페이지에서는 이런 식으로 뭔가를 할 수있는로드 된 후 시작 완료 될 때까지이 기다립니다 응용 프로그램이 시작될 때

+0

도와 주셔서 감사합니다. objIE.Busy가 스크립트 인 동안 문제는 브라우저가로드 될 때까지 대기하지만 애플리케이션이로드되는 동안 기다리지 않습니다. –

+0

@KamichettySiva'Dojnt.ReadyState = 4'까지 해봤습니까? –

+0

예, 사용했습니다.하지만 똑같은 일이 일어나고 있습니다. 응용 프로그램이로드되는 동안 스크립트가 대기하지 않습니다. –

관련 문제