如何使用Selenium Python运行Microsoft Edge headless?

如何使用Selenium Python运行Microsoft Edge headless?,python,selenium,microsoft-edge,Python,Selenium,Microsoft Edge,使用Chrome,您可以在创建驱动程序时添加选项。你就是这样 options = Options() options.headless = True driver = webdriver.Chrome(PATH\TO\DRIVER, options=options) 但出于某种原因,当尝试对Microsoft Edge执行相同操作时 options = Options() options.headless = True driver = webdriver.Edge(PATH\TO\DRIVE

使用Chrome,您可以在创建驱动程序时添加选项。你就是这样

options = Options()
options.headless = True
driver = webdriver.Chrome(PATH\TO\DRIVER, options=options)
但出于某种原因,当尝试对Microsoft Edge执行相同操作时

options = Options()
options.headless = True
driver = webdriver.Edge(PATH\TO\DRIVER, options=options)
我得到这个错误

TypeError: __init__() got an unexpected keyword argument 'options'
出于某种原因,Edge的驱动程序不接受文件路径以外的任何其他参数。有没有办法像Chrome一样运行Edge headless并添加更多选项

  options = EdgeOptions()
  options.use_chromium = True
  options.add_argument("headless")
  options.add_argument("disable-gpu")
尝试上面的代码,您必须启用chromium才能启用headless

这仅适用于新的edge Chrome,不适用于edge旧版本。在旧版本中,不支持headless

完整代码

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

# make Edge headless
edge_options = EdgeOptions()
edge_options.use_chromium = True  # if we miss this line, we can't make Edge headless
# A little different from Chrome cause we don't need two lines before 'headless' and 'disable-gpu'
edge_options.add_argument('headless')
edge_options.add_argument('disable-gpu')
driver = Edge(executable_path='youredgedriverpath', options=edge_options)

webdriver.Edge
不接受任何
选项,因此我将其切换为以下选项:
这对我有用

        # imports
        from selenium import webdriver
        from msedge.selenium_tools import EdgeOptions

        # options
        options = EdgeOptions()
        options.use_chromium = True
        options.add_argument("--headless")
        options.add_argument("disable-gpu")

        browser = webdriver.Chrome(
            executable_path="resources/msedgedriver.exe", options=options)
        browser.get(gen_token)
我正在使用的Microsoft Edge版本是:

微软边缘 版本89.0.774.57(正式版本)(64位)

这对我很有用。

对于Edge browser

        # imports
        from selenium import webdriver
        from msedge.selenium_tools import EdgeOptions

        # options
        options = EdgeOptions()
        options.use_chromium = True
        options.add_argument("--headless")
        options.add_argument("disable-gpu")

        browser = webdriver.Chrome(
            executable_path="resources/msedgedriver.exe", options=options)
        browser.get(gen_token)
options=EdgeOptions()

options.use\u=True

options.添加参数('--allow running unsecure content')

选项。添加参数(“--忽略证书错误”)

self.wd=webdriver.Chrome(可执行文件路径=EdgeChromiumDriverManager().install(),options=options)

self.wd.maximize\u window()

边缘无头

options=EdgeOptions()

options.use\u=True

选项。添加参数(“--headless”)

选项。添加参数(“禁用gpu”)

options.添加参数('--allow running unsecure content')

选项。添加参数('--ignore certificate errors')

self.wd=webdriver.Chrome(可执行文件路径=EdgeChromiumDriverManager().install(),options=options)


self.wd.maximize_window()

您使用的是什么版本的selenium?@Sharmiko selenium 3.141.0I get
AttributeError:“Options”对象没有属性“AddArgument”
我将其更新为python代码,之前是java代码,添加了python代码和edge chromium文档。如果您使用的是edge legacy,则无法在headlessI中运行它运行最新版本的edge,但仍然会出现相同的错误什么错误,我更新了代码您可以粘贴错误吗