Selenium - Edge - 如何使用工作配置文件启动 webdriver 会话?
Selenium - Edge - How to start a webdriver session with work profile?
我的应用程序没有用于验证的登录页面。它使用我的组织电子邮件 ID (SSO) 来验证我对应用程序的访问。我使用的是 Microsoft Edge 80.0.361.66(正式版)(64 位)版本。
driver = webdriver.Edge()
driver.maximize_window()
selenium 版本 - selenium==3.141.0
此边缘会话不使用我的工作资料。它打开一个新会话,因此我的工作配置文件未加载,我对应用程序的访问被拒绝。但是,我确实尝试更新 selenium 的版本以使用 EdgeOptions。但是,那也不起作用。下面是代码:
options = webdriver.EdgeOptions()
options.add_argument("user-data-dir=C:\Users\Ajmal.Moideen\AppData\Local\Microsoft\Edge\User Data")
driver = webdriver.Edge(options=options)
driver.maximize_window()
selenium 版本=4.0.0a3
这是我如何让它工作的 - 我正在使用 Chromium Edge 85.0.564.51 和 Selenium 3.141.0。
来自 pip 的 Selenium 3.141.0 似乎不支持新的 Chromium-based Edge Webdriver,但微软在他们的 msedge-selenium-tools
package (better documentation here) 中提供了它,正如 Matthias 对你的问题的评论所提到的。
首先,获取 Chromium Edge 网络驱动程序 here - 获取与您的 Edge 版本相匹配的版本(转到 chrome:version
在 Edge 中查看您的版本 运行)。把webdriver放在方便的地方,下面需要设置driverpath
指向它。
安装 pip 包:
pip install msedge-selenium-tools selenium==3.141
在您的代码中,导入 msedge-selenium-tools
Webdriver 和 Options 模块并构建 webdriver,如下所示:
from msedge.selenium_tools import Edge, EdgeOptions
...
options = EdgeOptions()
options.use_chromium = True
options.add_argument("--user-data-dir=C:\Users\YOUR-USERNAME\AppData\Local\Microsoft\Edge\User Data")
options.add_argument("--start-maximized")
driverpath = 'msedgedriver.exe'
driver = Edge(driverpath, options=options)
瞧,这应该可以解决问题。
P.S.: 即使 chrome:version
将显示您的配置文件路径并带有尾随 \Default
,请不要将其包含在上面的 --user-data-dir
参数中,因为驱动程序似乎将 \Default
附加到末尾。
我的应用程序没有用于验证的登录页面。它使用我的组织电子邮件 ID (SSO) 来验证我对应用程序的访问。我使用的是 Microsoft Edge 80.0.361.66(正式版)(64 位)版本。
driver = webdriver.Edge()
driver.maximize_window()
selenium 版本 - selenium==3.141.0
此边缘会话不使用我的工作资料。它打开一个新会话,因此我的工作配置文件未加载,我对应用程序的访问被拒绝。但是,我确实尝试更新 selenium 的版本以使用 EdgeOptions。但是,那也不起作用。下面是代码:
options = webdriver.EdgeOptions()
options.add_argument("user-data-dir=C:\Users\Ajmal.Moideen\AppData\Local\Microsoft\Edge\User Data")
driver = webdriver.Edge(options=options)
driver.maximize_window()
selenium 版本=4.0.0a3
这是我如何让它工作的 - 我正在使用 Chromium Edge 85.0.564.51 和 Selenium 3.141.0。
来自 pip 的 Selenium 3.141.0 似乎不支持新的 Chromium-based Edge Webdriver,但微软在他们的 msedge-selenium-tools
package (better documentation here) 中提供了它,正如 Matthias 对你的问题的评论所提到的。
首先,获取 Chromium Edge 网络驱动程序 here - 获取与您的 Edge 版本相匹配的版本(转到 chrome:version
在 Edge 中查看您的版本 运行)。把webdriver放在方便的地方,下面需要设置driverpath
指向它。
安装 pip 包:
pip install msedge-selenium-tools selenium==3.141
在您的代码中,导入 msedge-selenium-tools
Webdriver 和 Options 模块并构建 webdriver,如下所示:
from msedge.selenium_tools import Edge, EdgeOptions
...
options = EdgeOptions()
options.use_chromium = True
options.add_argument("--user-data-dir=C:\Users\YOUR-USERNAME\AppData\Local\Microsoft\Edge\User Data")
options.add_argument("--start-maximized")
driverpath = 'msedgedriver.exe'
driver = Edge(driverpath, options=options)
瞧,这应该可以解决问题。
P.S.: 即使 chrome:version
将显示您的配置文件路径并带有尾随 \Default
,请不要将其包含在上面的 --user-data-dir
参数中,因为驱动程序似乎将 \Default
附加到末尾。