TypeError:__init__()在使用EdgeOptions时获得意外的关键字参数

问题描述

您好,我正在尝试运行基于Chromium的Edge驱动程序版本90.0.818.42的以下代码:

from selenium import webdriver
from msedge.selenium_tools import EdgeOptions

dirpath = os.getcwd()

edge_driver_path_used = dirpath + r'/features/resources/drivers/msedgedriver.exe'

my_edge_option = EdgeOptions()
my_edge_option.use_chromium = True
my_edge_option.binary_location = "C:Program Files (x86)MicrosoftEdgeApplicationmsedge.exe"
edge_driver = webdriver.Edge(options=my_edge_option)

edge_driver.get('My URL Here')

运行此代码后,我收到以下异常:

edge_driver = webdriver.Edge(options=my_edge_option)
TypeError: __init__() got an unexpected keyword argument 'options'

我似乎没有错过任何导入,那么为什么我会得到这个例外?请帮帮我


解决方案

似乎是您问题的解决方案: How to run Microsoft Edge headless with Selenium Python?

  options = EdgeOptions()
  options.use_chromium = True

安装附加程序包,如下所示:

pip install msedge-selenium-tools

并使用以下命令初始化驱动程序:

from msedge.selenium_tools import EdgeOptions
from msedge.selenium_tools import Edge

# Edge in headless mode
edge_options = EdgeOptions()
edge_options.use_chromium = True
driver = Edge(executable_path='your_driver_path', options=edge_options)

以下是官方文档: https://docs.microsoft.com/en-us/microsoft-edge/webdriver-chromium/?tabs=python

相关文章