我想知道如何在 Selenium 中测试页面时运行隐藏的 Firefox 窗口,并遇到 this solution 。它说我可以在 headless 模式下运行 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()
有人可以解释一下这两种方式之间的区别吗?
最佳答案
第一个解决方案在您的计算机上设置环境变量,即更改您的平台。根据docs
If the platform supports the putenv() function, this mapping may be used to modify the environment
仅当您的平台支持 putenv() 时,它才有效。
Availability: most flavors of Unix, Windows.
第二个解决方案使用一些选项设置 webdriver
实例,而无需更改您的平台。
关于python - 在 headless 模式下运行 Firefox 的正确方法(Selenium、Python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51740517/