소개
Selenium에서 웹페이지가 완전히 로드되었는지 확인 안정적인 웹 탐색 및 데이터 검색에 중요할 수 있습니다. 특정 요소 가시성 검사가 일반적으로 사용되지만, 일반적인 솔루션이 필요합니다.
질문
웹 페이지가 Selenium에 완전히 로드되었는지 확인하려고 합니다. , 모든 컨트롤과 콘텐츠가 있는지 확인합니다. 그러나 WebDriverWait로 'document.readyState'를 확인하는 접근 방식을 사용하는 것은 일관되게 작동하지 않는 것 같습니다. 페이지 로딩이 완료되었는지 확인하기 위해 Selenium에 사용할 수 있는 일반 기능이 있나요?
답변
아니요, Selenium에는 전용 일반 기능이 없습니다. 페이지가 완전히 로드되었는지 직접 확인할 수 있습니다.
페이지 로드 전략
한 가지 접근 방식은 DesiredCapability 또는 ChromeOptions를 사용하여 'pageLoadStrategy'를 'normal'로 설정하는 것입니다. 이 전략은 브라우저 클라이언트가 "완료"와 동일한 'document.readyState'를 수신할 때까지 기다립니다. 그러나 이것이 모든 JavaScript 및 Ajax 호출이 완료된다는 것을 보장하지는 않습니다.
Ajax 완료
이를 설명하기 위해 Ajax를 기다리는 사용자 정의 함수를 생성할 수 있습니다. 완료, 'jQuery.active'가 0인지 확인.
예상됨 조건
보다 안정적인 접근 방식은 ExpectedConditions와 함께 WebDriverWait를 사용하는 것입니다. 이를 통해 특정 요소의 가시성, 특정 제목의 존재 등 특정 조건이 충족될 때까지 기다릴 수 있습니다.
요소 가시성
계속하기 전에 특정 요소가 표시되는지 확인해야 하는 경우 ExpectedConditions.visibilityOfElementLocated()를 사용하여 해당 요소가 표시될 때까지 기다립니다.
참조
위 내용은 웹 페이지 로드 상태를 안정적으로 확인하는 일반 Selenium 기능이 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!