在过去的几天里,我把Selenium、Tor和Firefox组合在一起来处理多个任务。我已经设法用Python写了一个简单的脚本,它通过Selenium控制Firefox,而Firefox为了隐私而连接到Tor。
现在,我正在寻找一种节省资源的方法,所以我想到了在无头模式下运行Firefox,我以为这是一个常见的功能,但事实似乎并非如此。我正在寻找一种方法来做到这一点。之所以是火狐,而不是一些基于终端的浏览器,是因为我在火狐中使用的扩展名"TorButton“。它内置了javascript注入,这有助于保护隐私。
如果有人以前做过这个(我相信很多人都做过!),我会非常感谢一些小贴士,谢谢!
发布于 2012-04-08 13:16:54
xvfb是一种常见的方法。搜索"selenium xvfb“应该会找到很多内容,例如:
发布于 2017-11-25 09:14:35
自2017年9月28日发布56版以来,Firefox无头模式在所有三个主要操作系统中都可用。
你可以通过webdriver.FirefoxOptions()设置无头模式,就像你对Chrome所做的那样:
from selenium import webdriver
options = webdriver.FirefoxOptions()
options.add_argument('headless')
driver = webdriver.Firefox(options=options)备注:如果您使用Selenium < 3.8.0,则必须用webdriver.firefox.options.Options()替换webdriver.FirefoxOptions() (请参阅PR #5120)。
此外,使用环境变量MOZ_HEADLESS也会做同样的事情:
import os
from selenium import webdriver
os.environ['MOZ_HEADLESS'] = '1' # <- this line
driver = webdriver.Firefox()发布于 2013-07-29 13:07:39
或者使用真正的无头浏览器,如Phantomjs,它是轻量级的,并且与selenium很好地集成在一起
from selenium import webdriver
driver=webdriver.PhantomJS('your pahtomjs exe file locaiton')https://stackoverflow.com/questions/10060417
复制相似问题