2017-12-14 27 views
1

웹 사이트에서 데이터를 다운로드하기위한 자동화 스크립트를 작성했습니다. Selenium webdriver 라이브러리와 Chromedriver를 사용하고 있습니다. 각 스크립트에 대해 실행 가능한 병을 만들고 스케줄을 잡았습니다. 스크립트는 원격 데스크톱에서 실행할 때마다 대부분의 시간이 오류를크로메 드라이버가 제 시간에로드되지 않습니다. org.openqa.selenium.WebDriverException 오류 : 드라이버 서버가 시작될 때까지 기다리는 시간이 초과되었습니다.

org.openqa.selenium.WebDriverException 무엇입니까 : 시작하는 드라이버 서버를 기다리는 시간이 초과되었습니다.

이 예외는, 그래서 chromedriver 그래서이 문제가 발생하지 않을 수 있음을 실행하기위한 대기 시간을 증가시킬 수있는 방법이 라인

driver = new ChromeDriver(); 

에 발생합니다. 또는 다른 이유로이 문제가 발생합니다. 최신 크롬 드라이버 버전 2.34를 사용 중입니다.

+2

안녕하세요. 오신 것을 환영합니다. StackOverflow. 도움말 페이지, 특히 [여기에 관해서 내가 무엇에 관해 물을 수있는 주제는 무엇입니까?] (http://stackoverflow.com/help/on-topic) 섹션과 [ "어떤 유형의 질문을해야합니까? 묻지 마시오? "] (http://stackoverflow.com/help/dont-ask). 더 중요한 것은 [Stack Overflow question checklist] (http://meta.stackexchange.com/q/156810/204922)를 읽어보십시오. [Minimal, Complete, Verifiable Examples] (http://stackoverflow.com/help/mcve)에 대해 배우고 싶을 수도 있습니다. – Clijsters

답변

2

Chromedriver에 속성을 설정 했습니까?

System.setProperty("webdriver.chrome.driver", "chromedriver.exe"); 
+0

예 속성을 설정했습니다. 이것은 매번 발생하지 않습니다. 대부분 3-4 개의 크롬 드라이버가 simulatenously를 호출합니다. –

+0

안녕하세요. 타임 아웃을 위해 설정된 시간을 변경할 수있는 방법이 있습니까? – gab

1

내포력은 어떻습니까? 너 세트있어?

wd.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); 

다른 맞춤 솔루션을 사용하면 Thread.sleep을 추가 할 수 있지만 권장하지 않습니다. 당신은 동시에 여러 스크립트를 실행하는 웹 드라이버의 여러 인스턴스와 스레딩 를 사용하려고하면