簡體   English   中英

具有BinaryLocation的C#Google Chrome Selenium URL導航

[英]C# Google Chrome Selenium URL Navigation with BinaryLocation

問候StackOverflow社區,

我的問題很簡單。 我有以下五行代碼,無法弄清楚為什么使用自定義二進制位置時Google Chrome瀏覽器不會啟動google.com

        var Chrome = new ChromeOptions();
        Chrome.AddArgument("no-sandbox");
        Chrome.BinaryLocation = @"C:\GoogleChrome\chrome.exe";
        ChromeDriver driver = new ChromeDriver(@"C:\ChromeDriver", Chrome);
        driver.Navigate().GoToUrl("https://www.google.com");

有任何想法嗎? 我所得到的是啟動Chrome瀏覽器時默認的chromedriver URL“ data: ”。

使用Chrome.BinaryLocation時為什么driver.navigate命令不起作用? 如果我注釋掉那條線,那會很好。

我正在使用以下內容:

  • Windows 7的
  • Visual Studio社區版2017
  • Google Chrome版本67
  • chromedriver 2.41
  • .NET 4.5綁定

嘿,我不認為您需要二進制位置

也許Chrome已經是一種類型,

嘗試這個:

ChromeOptions options = new ChromeOptions();
options.AddArgument("no-sandbox");
var driver = new ChromeDriver(@"C:\GoogleChrome", options);
driver.Navigate().GoToUrl("https://www.google.com");

好的,我找到了這個問題的答案。 我不知道為什么Firefox,Chrome或其他基於Chromium的瀏覽器的可移植版本無法通過這種方式運行,但是我通過將企業安裝文件從Chrome的程序文件復制到計算機上的另一個目錄,然后指向Selenium腳本以使用該二進制位置。 然后就很好了。

將Chrome指向自定義Chrome配置文件位置也很有用,以防止更多的Chrome應用程序使用本地用戶的AppData文件夾。

如果有人對完成同一任務感興趣,我可以提供一些示例代碼來完成此任務。 只是給我發消息以獲取更多詳細信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM