Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.3k views
in Technique[技术] by (71.8m points)

selenium - CreatePlatformSocket() returned an error: An invalid argument was supplied. (0x2726) when trying to access chromedriver through network path

I understand that the OS update caused to this issue not only for the chromedriver but also for the geckodriver.

Both chromedriver and geckodriver start without any problem when, the station that was updated, runs them locally (drive C: for instance). The issues arises when these two are found in a network path.

I have checked the permissions for the specific user, that runs these drivers, and I also checked the UAC and the Firewall but they don't seem to be related to the issue.

I prefer running the drivers from a network path for the sake of Maintenance. Because, I have several automation stations I want to centralize the infrastructure. This way I don't need to maintain the infrastructure in each one of the stations.

I am running both drivers with their default settings without using their options and I believe that maybe using these options can solve the issue.

Is someone familiar with these kind of issues ? Is it possible that by using the driver's options I can pass these issues safely ?

By the way I am running over a Windows 10 Pro Version: 1803 OS build: 17134.1

The chromedriver is version 2.40.565498 win32 and the geckodriver is v0.20.1-win64

The error messages that I get are:

chromedriver

[1530079175.164][SEVERE]: CreatePlatformSocket() returned an error: An invalid argument was supplied. (0x2726)
[1530079175.165][INFO]: listen on IPv4 failed with error ERR_INVALID_ARGUMENT
[1530079175.166][SEVERE]: CreatePlatformSocket() returned an error: An invalid argument was supplied. (0x2726)
[1530079175.166][INFO]: listen on IPv6 failed with error ERR_INVALID_ARGUMENT

geckodriver

An invalid argument was supplied. (os error 10022)
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

As you have mentioned:

  • Both ChromeDriver and GeckoDriver starts without any problem when executed locally ( e.g. C: drive)
  • The issues arises when ChromeDriver and GeckoDriver are found in a network path.

Historically, as per the discussions:

It had been observed that both ChromeDriver and GeckoDriver when shared over the network, while initializing the respective Browser Clients the following errors were observed:

  • Sample A:

    Starting ChromeDriver 2.28.455520 (cc17746adff54984afff480136733114c6b3704b) on port 12121
    Only local connections are allowed.
    [0.023][SEVERE]: CreatePlatformSocket() returned an error: An invalid argument was supplied. (0x2726)
    [0.023][SEVERE]: CreatePlatformSocket() returned an error: An invalid argument was supplied. (0x2726)
    Port not available. Exiting...
    Mar 11, 2017 9:13:06 PM org.openqa.selenium.os.UnixProcess checkForError
    SEVERE: org.apache.commons.exec.ExecuteException: Process exited with an error: 1 (Exit value: 1)
    org.openqa.selenium.WebDriverException: Timed out waiting for driver server to start.
    
  • Sample B:

    [0.147][SEVERE]: CreatePlatformSocket() returned an error: An invalid argument was supplied. (0x2726) 
    [0.147][SEVERE]: CreatePlatformSocket() returned an error: An invalid argument was supplied. (0x27t6) 
    Port not available. Exiting...
    
  • Sample C:

    Starting ChromeDriver 2.38.552522 (437e6fbedfa8762dec75e2c5b3ddb86763dc9dcb) on port 17873
    Only local connections are allowed.
    [1525873930.811][SEVERE]: CreatePlatformSocket() returned an error: An invalid argument was supplied. (0x2726)
    [1525873930.816][SEVERE]: CreatePlatformSocket() returned an error: An invalid argument was supplied. (0x2726)
    Port not available. Exiting...
    May 09, 2018 7:22:30 PM org.openqa.selenium.os.UnixProcess checkForError
    SEVERE: org.apache.commons.exec.ExecuteException: Process exited with an error: 1 (Exit value: 1)
    Exception in thread "main" org.openqa.selenium.remote.UnreachableBrowserException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure.
    
  • And even:

    //chromedriver
    [1530079175.164][SEVERE]: CreatePlatformSocket() returned an error: An invalid argument was supplied. (0x2726)
    [1530079175.165][INFO]: listen on IPv4 failed with error ERR_INVALID_ARGUMENT
    
    //geckodriver
    An invalid argument was supplied. (os error 10022)
    
    //IEDriverServer
    Failed to start the server with: port = '2305', host = '', log level = '', log file = '', whitelisted ips = ''
    

Solution

So a generalized solution would be to access ChromeDriver and GeckoDriver by putting them into the local drives of the host machine.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...