google-chrome - Selenium Google 登录 block

标签 google-chrome selenium-webdriver selenium-chromedriver geckodriver

我在使用 Google 登录时遇到问题。我想登录我的帐户,但 Google 表示不允许自动化驱动程序登录。

我正在寻找解决方案。是否可以获取普通 Firefox/Chrome 的 cookie 并将其加载到 ChromeDriver/GeckoDriver 中?我认为这可以是一个解决方案。但我不确定这是否可能..

寻找解决方案...

enter image description here

Quick solution is using =>

var options = new ChromeOptions();
options.addArguments(@"user-data-dir=c:\Users\{username}\AppData\Local\Google\Chrome\User Data\");

最佳答案

我遇到了同样的问题并找到了解决方案。我正在使用

  1. Windows 10 专业版

  2. Chrome 版本83.0.4103.97(官方版本)(64 位)

  3. Selenium ChromeDriver 83.0.4103.39

一些打开Goog​​le页面的简单C#代码

var options = new ChromeOptions();
options.addArguments(@"user-data-dir=c:\Users\{username}\AppData\Local\Google\Chrome\User Data\");
IWebDriver driver = new OpenQA.Selenium.Chrome.ChromeDriver();
driver = new ChromeDriver(Directory.GetCurrentDirectory(), options);
driver.Url = "https://accounts.google.com/";
Console.ReadKey();

这里的核心问题使用selenium驱动程序时无法登录,但可以使用已经登录到google帐户的配置文件

您必须找到您的 Chrome 商店个人资料所在的位置,并在其后面附加 “user-data-dir” 选项。

PS。将 {username} 替换为您的真实帐户名。

在 Linux 上,用户配置文件位于 “~/.config/google-chrome” 中。

关于google-chrome - Selenium Google 登录 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60117232/

相关文章:

javascript - 有没有办法在 Chrome 的检查器中实时查看哪些 Javascript 函数(函数的名称)执行?

google-chrome - 为什么 Chrome 开发者工具网络选项卡显示的大小比下载的文件大小小得多?

selenium - WebDriver with Java - 单击图像打开链接

java - 如何在 Selenium Webdriver 中获取元素的 gettext()

java - 如何处理没有任何元素的浏览器通知弹出窗口?

java - Mac 上的 ChromeDriver 错误 : java. lang.IllegalStateException

javascript - JQuery 和 Chrome 扩展

javascript - Chrome 扩展程序 : How to send data from Panel Window to Popup?

java - 如何使用java按下selenium中的删除按钮?

java - 使用 element.click() 时出现 WebDriverException 'unknown error: no element reference returned by script'