Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Selenium:使用相同的配置文件打开两个不同的ChromeDriver实例_C#_Selenium_Selenium Chromedriver - Fatal编程技术网

C# Selenium:使用相同的配置文件打开两个不同的ChromeDriver实例

C# Selenium:使用相同的配置文件打开两个不同的ChromeDriver实例,c#,selenium,selenium-chromedriver,C#,Selenium,Selenium Chromedriver,我尝试打开两个具有相同配置文件的ChromeDriver实例,如下所示: ChromeDriverService service1 = ChromeDriverService.CreateDefaultService(); ChromeOptions options1 = new ChromeOptions(); options1.AddArguments($"user-data-dir=C:/Users/{Environment.UserName}/AppData/Local/Google/C

我尝试打开两个具有相同配置文件的ChromeDriver实例,如下所示:

ChromeDriverService service1 = ChromeDriverService.CreateDefaultService();
ChromeOptions options1 = new ChromeOptions();
options1.AddArguments($"user-data-dir=C:/Users/{Environment.UserName}/AppData/Local/Google/Chrome/User Data/Default");
service1.HideCommandPromptWindow = true;
ChromeDriver driver1 = new ChromeDriver(service1, options1);
driver1.Navigate().GoToUrl("https://www.google.com");

ChromeDriverService service2 = ChromeDriverService.CreateDefaultService();
ChromeOptions options2 = new ChromeOptions();
options2.AddArguments($"user-data-dir=C:/Users/{Environment.UserName}/AppData/Local/Google/Chrome/User Data/Default");
service2.HideCommandPromptWindow = true;
ChromeDriver driver2 = new ChromeDriver(service2, options2);
driver2.Navigate().GoToUrl("https://www.google.com");
问题是第一个驱动程序工作并导航到Google,但在第二个驱动程序中,我在实例化第二个驱动程序时遇到以下异常:

其他信息:向远程WebDriver服务器发送HTTP请求以获取URL时,引发了一个带有空响应的异常。异常状态为ReceiveFailure,消息为:基础连接已关闭:接收时发生意外错误。

我还从不同的二进制文件中执行了每个驱动程序,但是第二个驱动程序遇到了相同的问题

问题是由用户配置文件(Chrome选项)引起的,通过删除配置文件,一切正常

但是,对我来说,使用相同的配置文件是强制性的

任何指导都会有所帮助


谢谢。

这可能是因为您正在使用单个文件进行分析

我发现了一篇文章,你可以在其中找到复制配置文件的步骤。 按照说明,在webdriver的第二个实例中传递配置文件副本

文章链接:-


希望它能帮助你:)

这是个好把戏。但我有一个问题:当我使用用户名和密码登录时,我正在爬网的网站(不是谷歌)对会话和浏览器数据很敏感(在我登录后,没有人可以从不同的计算机,甚至不同的浏览器登录此帐户,除了相同的浏览器和相同的配置文件,我在这里做什么)。在将新的配置文件目录传递给第二个实例后,我使用第一个浏览器登录,刷新第二个浏览器,它会根据我的需要自动登录。我的问题是,如果我在第一个实例中更改cookie值,会发生这种情况吗?(因为我有时需要这样做)太棒了。谢谢