[google-chrome] Chrome 브라우저에서 WebDriver를 실행할 때 브라우저가 제대로 실행 되더라도 “로컬 연결 만 허용됩니다”라는 메시지가 표시됨

WebDriver를 사용하여 Chrome 브라우저를 실행할 때 콘솔에 다음 메시지가 표시됩니다. 해결 방법을 알려주십시오.

“포트 22582에서 ChromeDriver (v2.10.267521) 시작 중” “로컬 연결 만 허용됩니다.”

다음은 내 샘플 코드입니다.

public class Browserlaunch {
    public static void main(String[] args) {
        System.setProperty("webdriver.chrome.driver", "C:\\chromedriver_win32   \\chromedriver.exe");
        WebDriver driver = new ChromeDriver() ;
        driver.get("http://webdunia.com");
        driver.close();
        driver.quit();
    }
}



답변

이것은 정보 용 메시지입니다. 메시지가 알려주는 것은 chromedriver 실행 파일이 로컬 컴퓨터의 연결 만 허용한다는 것입니다.

대부분의 드라이버 구현 (확실히 Chrome 드라이버 및 IE 드라이버)은 HTTP 서버를 생성합니다. 언어 바인딩 (Java, Python, Ruby, .NET 등)은 모두 JSON-over-HTTP 프로토콜을 사용하여 드라이버와 통신하고 브라우저를 자동화합니다. HTTP 서버는 단순히 언어 바인딩에 의해 생성 된 HTTP 요청을 위해 열린 포트에서 수신 대기하므로 언어 ​​바인딩에 의해 시작된 HTTP 서버에 대한 연결은 동일한 호스트의 다른 프로세스에서만 허용됩니다. 이 제한은 브라우저 가 외부 웹 사이트 에 연결할 수있는 연결에는 적용되지 않습니다 . 오히려 단순히 다른 웹 사이트에서 들어오는 연결을 차단 합니다.


답변

똑같은 오류가 발생했습니다. 나는 오늘 몇 시간 동안이 문제와 싸웠다. chromedriver 버전과 selenium-server-standalone 버전 간의 불일치로 인해 발생한 것 같습니다. config.js 파일은 chromedriver 2.9 및 selenium-server-standalone 2.35.0이있는 디렉토리를 참조했습니다. 2.10 및 2.42.2를 참조하고 있는지 확인하면 작동했습니다.


답변

반드시 모범 사례는 아니지만 내 환경은 셀레늄에 액세스해야하는 여러 컴퓨터가있는 로컬 네트워크였습니다.

chromedriver를 실행할 때 다음과 같이 매개 변수를 전달할 수 있습니다.

chromedriver --whitelisted-ips=""

이것은 기본적으로 모든 IP를 허용 목록에 추가합니다. 물론 항상 이상적인 솔루션은 아니지만 프로덕션 환경에 대해주의해야합니다. 그러나 자세한 경고가 표시되어야합니다.

포트 9515에서 ChromeDriver 2.16.333244 (15fb740a49ab3660b8f8d496cfab2e4d37c7e6ca) 시작 모든 원격 연결이 허용됩니다. 대신 화이트리스트를 사용하십시오!

기껏해야 해결 방법이지만 작동합니다.

상대 체크인


답변

한동안 보지 않은 오래된 프로젝트를 고쳐야 할 때 이런 일이 일어났습니다. 프로젝트와 관련된 chromedriver가 내 버전의 크롬과 호환되지 않았으므로 chromedriver를 업데이트했을 때 제대로 작동했습니다.


답변

이것은 정보 용 메시지입니다. 테스트 스크립트와 chromedriver가 같은 컴퓨터에 있으면 “whitelisted-ips”옵션을 추가 할 수 있습니다. 테스트는 정상적으로 실행됩니다.하지만 그리드 설정에서 chromedriver를 사용하면이 메시지가 나타나지 않습니다.


답변

명령을 별도로 실행하는 것이 아니라 동일한 터미널 에서 실행해야했습니다 .

nohup sudo Xvfb :10 -ac
export DISPLAY=:10
java -jar vendor/se/selenium-server-standalone/bin/selenium-server-standalone.jar -Dwebdriver.chrome.bin="/usr/bin/google-chrome" -Dwebdriver.chrome.driver="vendor/bin/chromedriver"


답변

Selenium 및 ChromeDriver의 호환되지 않는 버전을 사용하는 경우이 오류가 자주 나타납니다.

Maven 프로젝트 용 Selenium 3.0.1 :

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>3.0.1</version>
    </dependency>

ChromeDriver 2.27 : https://sites.google.com/a/chromium.org/chromedriver/downloads