Vraag Wanneer u WebDriver uitvoert met een Chrome-browser, krijgt u het bericht "Alleen lokale verbindingen zijn toegestaan", hoewel de browser correct wordt gestart


Wanneer ik een Chrome-browser gebruik met WebDriver, krijg ik het volgende bericht op de console te zien. Laat het me weten hoe het op te lossen.

"ChromeDriver (v2.10.267521) starten op poort 22582" "Alleen lokaal   verbindingen zijn toegestaan. "

Hier is mijn voorbeeldcode:

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();
    }
}

53
2017-08-01 12:40


oorsprong


antwoorden:


Dit is alleen een informatief bericht. Wat het bericht u vertelt is dat het uitvoerbare stuurprogramma van de chromedriver alleen verbindingen van de lokale machine accepteert.

De meeste stuurprogramma-implementaties (het Chrome-stuurprogramma en het IE-stuurprogramma) maken een HTTP-server. De taalbindingen (Java, Python, Ruby, .NET, enz.) Maken allemaal gebruik van een JSON-over-HTTP-protocol om met de bestuurder te communiceren en de browser te automatiseren. Aangezien de HTTP-server gewoon luistert naar een open poort voor HTTP-aanvragen die worden gegenereerd door de taalbindingen, mogen verbindingen met de HTTP-server die door de taalbindingen zijn gestart alleen afkomstig zijn van andere processen op dezelfde host. Merk op dat deze beperking niet van toepassing is op verbindingen met de browser kan maken naar externe websites; liever het gewoon voorkomt inkomend verbindingen van andere websites.


75
2017-08-01 20:31



Ik kreeg exact dezelfde fouten. Ik heb dit probleem vandaag een paar uur gestreden. Het leek te worden veroorzaakt door een mismatch tussen de versies van chromedriver en selenium-server-standalone. Het bestand config.js verwijst naar een map met chromedriver 2.9 en seleen 2.35.0 met selenium-server. Zodra ik ervoor zorgde dat we naar 2.10 en 2.42.2 verwezen, werkte het.


9
2017-07-17 04:31



Dit gebeurde met mij toen ik een oud project moest repareren waar ik in een tijdje niet naar had gekeken. De verchroomde driver die aan het project is gekoppeld, was niet compatibel met mijn versie van chrome, dus toen ik de verchroomde driver update werkte het prima.


4
2018-03-04 10:49



Niet noodzakelijk de beste praktijk, maar mijn omgeving was een lokaal netwerk met verschillende machines die toegang tot het selenium nodig hadden.

Wanneer u de verchroomde driver gebruikt, kunt u een param doorstaan ​​zoals:

chromedriver --whitelisted-ips=""

Dit zal in principe alle IP's op de witte lijst zetten, natuurlijk niet altijd een ideale oplossing en er voorzichtig mee zijn voor productie-enviornments, maar je zou een uitgebreide waarschuwing moeten krijgen:

ChromeDriver 2.16.333244 starten   (15fb740a49ab3660b8f8d496cfab2e4d37c7e6ca) op poort 9515 Alle externe   verbindingen zijn toegestaan. Gebruik in plaats daarvan een witte lijst!

Op zijn best een work-around, maar het werkt.

Relatieve check-in


4
2018-06-03 14:12



Dit is alleen een informatief bericht. Het betekent niets als uw testscripts en verchroomd stuurprogramma op dezelfde machine staan, dan is het mogelijk om de "whitelisted-ips" -optie toe te voegen. Uw test zal goed werken. Maar als u verchroomde besturing gebruikt in een grid-setup, zal dit bericht niet verschijnen


1
2018-02-05 19:02



Ik moest mijn opdrachten uitvoeren in de een en dezelfde terminal, niet apart.

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"

0
2017-08-12 03:01



Heel vaak verschijnt deze foutmelding als u incompatibele versies van Selenium en ChromeDriver gebruikt.

Selenium 3.0.1 voor Maven-project:

    <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


0
2018-01-04 10:52



Ik heb deze fout opgelost door het browser stuurprogramma te installeren:

  1. Navigeer door uw browser naar seleniumhq.org website
  2. Selecteer het tabblad Downloads
  3. Blader door de pagina naar het gedeelte Browser en download het gewenste stuurprogramma door op de link te klikken, bijvoorbeeld Google Chrome Driver
  4. Dubbelklik op het gedownloade bestand, bijvoorbeeld chromedriver_mac64 (1) .zip
  5. Dubbelklik op het uitgepakte bestand, bijvoorbeeld chromedriver

Referentie: zoek op YouTube.com naar de fout

Platform: macOS High Sierra 10.13.3


0
2018-03-20 20:55