【问题标题】:The right way to run Firefox in headless mode (Selenium, Python)以无头模式运行 Firefox 的正确方法(Selenium、Python)
【发布时间】:2019-01-15 08:30:45
【问题描述】:

我想知道在 Selenium 中测试页面时如何运行隐藏的 Firefox 窗口并遇到this solution。它说我可以像这样在无头模式下运行 Firefox:

from selenium import webdriver
import os
os.environ['MOZ_HEADLESS'] = '1'
driver = webdriver.Firefox()
driver.get("https://www.google.com/")
driver.close()

但它没有获得任何选票。人们似乎认为这是一个错误的答案。 为什么?

另外,在官方文档中我发现可以这样做:

from selenium import webdriver
from selenium.webdriver.firefox.options import Options
options = Options()
options.add_argument('-headless')
driver = webdriver.Firefox(options=options)
driver.get("https://www.google.com/")
driver.close()

有人能解释一下这两种方式的区别吗?

【问题讨论】:

  • 我会说遵循官方文档是对做某事的“正确方法”的一个不错的选择。

标签: python selenium firefox firefox-headless


【解决方案1】:

第一个解决方案在您的计算机上设置一个环境变量,即更改您的平台。根据docs

如果平台支持 putenv() 函数,这个映射可能是 用于修改环境

只有当你的平台支持putenv()时它才会起作用

可用性:大多数版本的 Unix、Windows。

第二种解决方案使用一些选项设置webdriver 实例,而不更改您的平台。

【讨论】:

    猜你喜欢
    • 2018-03-16
    • 2019-08-12
    • 1970-01-01
    • 2017-05-08
    • 2019-01-14
    • 1970-01-01
    • 2021-07-11
    • 2018-07-02
    相关资源
    最近更新 更多