2017-11-29 1 views
0

HtmlUnit을 사용하여 탐색하려는 웹 사이트가 있습니다.자바 HtmlUnit 배경 JavaScript 로딩

이 웹 사이트는 특정 버튼을 변경하거나 JavaScript 이벤트에 따라 특정 요소를 표시하거나 숨기 게합니다.

가장 간단한 예는 다음과 같습니다. 텍스트 입력 상자와 클래스가있는 버튼으로 인해 클릭하지 못하게합니다. 텍스트가 상자에 쓰여지 자마자 버튼을 클릭 할 수있게됩니다. 입력 텍스트 상자의 값을 설정하고 있지만 버튼의 업데이트가 표시되지 않습니다.

나는 배경 업데이트 페이지 대기하게하기 위해 다음과 같은 시도 : 아약스 컨트롤러를 설정할 때

  • 사용 NicelyResynchronizingAjaxController() 웹 클라이언트의 아약스 컨트롤러
  • 재정 processSynchron 등을()가 true를 반환 몇 초
  • 페이지 변수를 동기화하고 몇 초
  • 부른 것이에 대기를 호출 잠을 스레드를 넣어
  • 루핑 웹 클라이언트
  • 에 g waitForBackgroundJavaScript 페이지의 둘러싸는 윈도우의 작업 관리자가 당신이 정말 낮은 수준의 방법을 사용하고 같은
+0

코드를 입력하여 텍스트 상자를 업데이트하는 방법과 페이지 내용을 검색하는 방법 – RBRi

+0

HtmlInput form; form.setValueAttribute ("..."); 다음 페이지 내용을 내가 button.click() 및 초기 개체의 결과로 페이지를 확인해 보았습니다. 어쩌면 이것이 문제가 될 수 있습니다. 어떤 제안? –

답변

0

이 보이는 더 이상 자바 스크립트 작업을 가지고있다. 이것은 당신이 상세한를 제공 할 필요가 도움이되지 않는 경우 자바 스크립트가

을 처리 할 때까지 기다릴 유형 ("...") 방법

  • 다음 waitForBackgroundJavaScript()를 사용하여

    • 을 시도 샘플을 통해 우리에게 코드를보고 분석/디버깅을 할 수 있습니다.