0

到達navigate.GoToUrl("http://www.example.com/") chromedriver.exe將停止工作,但它正在使用FirefoxDriver時正在使用:chromedriver.exe已停止工作時driver.Navigate()。GoToUrl(「http://www.example.com/」)

using (IWebDriver driver = new ChromeDriver(DRIVER_PATH)) 
{ 
    // driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(10)); 

    INavigation navigate = driver.Navigate(); 
    navigate.GoToUrl("http://www.example.com/"); 
} 
  1. Chrome瀏覽器將成功打開。
  2. 然後出現幾秒鐘「chromedriver.exe已停止工作」。

這是我的文件的debug.log:

[0508/115012.911:ERROR:process_reader_win.cc(114)] NtOpenThread: {Access Denied} A process has requested access to an object, but has not been granted those access rights. (0xc0000022) 
[0508/115012.912:ERROR:exception_snapshot_win.cc(87)] thread ID 7968 not found in process 
[0508/115012.912:WARNING:crash_report_exception_handler.cc(60)] ProcessSnapshotWin::Initialize failed 
  • ChromeDriver v2.9.248315(chromedriver_win32.zip)
  • 谷歌的Chrome版本58.0.3029.96(64位)

任何人都可以猜測如何使它在C#中工作?

+0

你能否將ChromeDriver版本升級到最新版本2.29.x? – DebanjanB

+0

@Dev這是最新版本。 – 5ervant

+0

@ 5ervant事實上,從3年前開始,2.9相當老。 2.29是最新的。 – Guy

回答

2

這裏是你的解決方案:

要使用Selenium工作3.4.0,你需要有最新ChromeDriver 2.29.x從here &最新的谷歌瀏覽器58.0

我看不出有任何問題你的代碼是這樣的。

您可能需要檢查navigate是否有GoToUrl方法實施或不在C#中。

正如在Java中,我們做這樣的:

WebDriver driver1 = new ChromeDriver(c1); 
    Navigation navigate = driver1.navigate(); 
    navigate.to("https://gmail.com"); 

讓我知道如果這個回答你的問題。

+0

我沒有想到,我提取的zip文件是舊版本,感謝提醒。這樣的錯誤使我的時間變得艱難.. – 5ervant

+0

很高興我能夠幫助你。如果對您有用,請上傳答案。謝謝。 – DebanjanB