c# - 在 Selenium 中附加到现有的 Chrome 页面
问题描述
作为背景,我正在尝试使用 Selenium 登录网站。但是,我似乎无法浏览 OAuth 提供程序的登录页面 - 在本例中为 MS。即使我使用各种等待技术来管理它,等等,我还是陷入了 2FA。
结果,我现在决定我需要做的是手动登录到该站点,然后运行 Selenium 脚本。但是,我似乎找不到任何地方显示如何连接到现有的broser实例:
var webDriver = new ChromeDriver();
只需启动一个新实例。有没有办法附加到现有实例?或者,有没有办法导航外部 OAuth 提供程序,例如 B2C?
解决方案
启动 chrome 为:
C:/pathtochroome/chrome.exe --remote-debugging-port=1559
将连接添加为:
ChromeOptions options = new ChromeOptions();
options.AddAdditionalCapability("debuggerAddress", "127.0.0.1:1559")
如果这不起作用,请尝试:
ChromeOptions options = new ChromeOptions();
options.DebuggerAddress = "127.0.0.1:1559";
推荐阅读
- node.js - Node Express 身份验证/授权
- r - 尝试安装 R 4.0.1,但遇到 Ubuntu 问题
- c++ - DDS_Octet 位移问题:右移在 C++ 中添加 1 而不是 0
- linux - sigtimedwait() 的跨 (POSIX) 平台模拟
- react-native - 来自 React Native 中 Firebase Firestore 的重复数据
- javascript - 导入 GraphQL 解析器和模式触发错误
- rust - 这种理解是否正确:特征和函数重载都实现了临时多态性,但方向不同
- javascript - 为什么我的位置固定后背景图像消失了?
- python - 在不涉及数据帧的情况下按升序对条形图进行排序
- bash - 用于比较数组变量的 Bash If 语句