큰 DOM (1000 줄, 10,000 노드)이있는 페이지에서 셀레늄을 사용하고 있습니다. DOM의 맨 끝 부분에있는 요소가 있는지 확인하려고합니다. section
노드는 라인의 99 %를 포함끝 부분에있는 요소에 대한 큰 DOM 검색
<html>
<body>
<section></section>
<script></script>
<span>
// several more wrappers around the UL
<ul id="itemsList"></ul>
</span>
</body>
</html>
:
구조는이 같은 것입니다.
UL은 항상 같은 위치에 있습니다.
내가 사용하고는 XPath는 다음과 같다 :
//body/span//ul
UL 인증이있는 경우, 검색이 <은 500ms 소요됩니다. 그러나 UL이 없으면 검색에 2 ~ 5 초가 소요됩니다. 순회가 똑같은 방식으로 일어나고 같은 시간이 걸릴 것으로 예상하므로이 점을 이해하지 못합니다.
셀렌을 사용하고 있으므로 By.Id
을 사용해 보았지만 동일한 결과가 나타납니다.
코드에 암시 적 타임 아웃이 있습니까? – Grasshopper
위의 주석에 추가적으로 getElementsByXpath (또는 List)를 사용하고 해당 목록의 크기를 확인하는 것이 좋습니다. –
Mikhail
하드 드라이브에서 루트 (C : \)부터 시작하는 파일을 검색하는 것을 생각해보십시오. C : \ Users \ you \ Documents \ projects \ foobar \ meetingMinutes \ 2015 \ January \ 에서 시작하는 것과 비교해보십시오. XPath에서 지정하는 DOM 구조가 많을수록 셀렌이 검색해야하는 경로의 수가 줄어들고 빠른 검색이 완료됩니다. – MikeJRamsey56