Kiedy uruchamiam przeglądarkę Chrome za pomocą WebDriver, otrzymuję następujący komunikat na konsoli. Daj mi znać, jak rozwiązać ten problem.
„Uruchamianie ChromeDriver (v2.10.267521) na porcie 22582” „Dozwolone są tylko połączenia lokalne”.
Oto mój przykładowy kod:
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();
}
}
źródło
Not secure data:,
Więc w tym sensie jest to problem. Czy masz pojęcie, dlaczego?Otrzymywałem dokładnie te same błędy. Walczyłem z tym problemem przez kilka godzin dzisiaj. Wydawało się, że jest to spowodowane niedopasowaniem między wersjami chromedriver i samodzielnym serwerem selenu. Plik config.js odwoływał się do katalogu, który zawierał chromedriver 2.9 i selenium-server-standalone 2.35.0. Kiedy upewniłem się, że odwołujemy się do 2.10 i 2.42.2, zadziałało.
źródło
Niekoniecznie najlepsza praktyka, ale moje środowisko było lokalną siecią z kilkoma maszynami, które potrzebowały dostępu do selenu.
Uruchamiając sterownik chromedriver, możesz przejść przez taki parametr:
chromedriver --whitelisted-ips=""
Spowoduje to w zasadzie białą listę wszystkich adresów IP, oczywiście nie zawsze jest to idealne rozwiązanie i należy zachować ostrożność w przypadku środowisk produkcyjnych, ale powinno zostać wyświetlone szczegółowe ostrzeżenie:
W najlepszym razie obejście, ale działa.
Względne zameldowanie
źródło
Przydarzyło mi się to, kiedy musiałem naprawić stary projekt, na który nie oglądano od jakiegoś czasu. Chromedriver powiązany z projektem nie był kompatybilny z moją wersją chrome, więc kiedy zaktualizowałem chromedriver działał dobrze.
źródło
To jest tylko wiadomość informacyjna. To nic nie znaczy, jeśli twoje skrypty testowe i chromedriver są na tym samym komputerze, możesz dodać opcję "whitelisted-ips". Twój test będzie działał poprawnie. Jeśli jednak używasz chromedriver w konfiguracji sieci, ten komunikat nie pojawi się
źródło
Musiałem uruchamiać moje polecenia w tym samym terminalu, a nie osobno.
źródło
Bardzo często ten błąd pojawia się, jeśli używasz niekompatybilnych wersji Selenium i ChromeDriver.
Selenium 3.0.1 dla projektu Maven:
ChromeDriver 2.27: https://sites.google.com/a/chromium.org/chromedriver/downloads
źródło
Po godzinach analizowania ton logów i kodu źródłowego w końcu znaleziono problem. Rozwiązanie tego problemu jest dość łatwe.
w jednej linii: musisz przekazać --whitelisted-ips = do plików wykonywalnych sterownika chrome (nie chrome!)
Możesz to zrobić na kilka sposobów:
Jeśli używasz ChromeDriver lokalnie / bezpośrednio z kodu, po prostu wstaw poniższe wiersze przed zainicjowaniem ChromeDriver
System.setProperty("webdriver.chrome.whitelistedIps", "");
Jeśli używasz go zdalnie (np. Koncentrator / siatka selenu), musisz ustawić właściwość systemu podczas uruchamiania węzła, jak w poleceniu:
lub docker, przekazując
JAVA_OPTS
envchrome: image: selenium/node-chrome:3.141.59 container_name: chrome depends_on: - selenium-hub environment: - HUB_HOST=selenium-hub - HUB_PORT=4444 - JAVA_OPTS=-Dwebdriver.chrome.whitelistedIps=
źródło
Chromedriver to WebDriver. WebDriver to narzędzie typu open source do automatycznego testowania aplikacji internetowych w wielu przeglądarkach. Zapewnia możliwości przechodzenia do stron internetowych, wprowadzania danych przez użytkownika, wykonywania JavaScript i nie tylko. Po uruchomieniu tego sterownika umożliwi on skryptom dostęp do tego i uruchamianie poleceń w Google Chrome.
Można to zrobić za pomocą skryptów działających w sieci lokalnej (
Only local connections are allowed.
) lub skryptów działających w sieciach zewnętrznych (All remote connections are allowed.
). Zawsze bezpieczniej jest używać opcji Połączenie lokalne. Domyślnie Twój Chromedriver jest dostępny przez port9515
.Odpowiadając na pytanie, jest to tylko wiadomość informacyjna. Nie musisz się tym martwić.
Poniżej podano obie opcje.
Dzieje się tak przez umieszczenie wszystkich adresów IP na białej liście.
źródło
Rozwiązałem ten błąd, instalując sterownik przeglądarki:
Odniesienie: wyszukaj błąd w serwisie YouTube.com
Platforma: macOS High Sierra 10.13.3
źródło