我正在以无头模式在Python和Firefox窗口中玩硒。问题是,如果您问我,我已经使用this useful answer在无头模式下创建了许多Firefox窗口。
首先,我不理解this answer为何没有获得任何投票,除了我自己的投票之外,即使看起来不错。有人可以解释吗?也许我缺少了一些东西。 ¯\ _(ツ)_ /¯
不幸的是,第二,我没有使用Python代码中的driver.close()
关闭那些以无头模式运行的窗口,其中有很多。我想知道,现在如何关闭它们?
我发现的唯一解决方案(针对Ubuntu
和MacOS High Sierra
)是:
ps aux | grep firefox | awk '{print $2}' | xargs kill
...,应在终端中运行。
但是它不仅以无头模式关闭所有Firefox窗口。从字面上看,它会杀死与Firefox相关的所有进程。
答案 0 :(得分:1)
通过壁虎驱动程序进行搜索,然后杀死您的壁虎进程。
netstat -tlp | egrep '(firefo|vnc|gecko)'
它是这样的:
0 0 localhost:9090 *:* LISTEN 11970/geckodriver
答案 1 :(得分:0)
当我尝试接受的答案时,它也杀死了一些可见的 Firefox 窗口。使用htop
,我发现所有使用python selenium 以无头模式运行的firefox 窗口都对应于命令/usr/lib/firefox/firefox --marionette --headless -foreground -no-remote -profile <tmp file>
。
因此,在 Unix 堆栈交换上使用 this answer,我想出了:
for pid in $(ps -ef | grep "firefox --marionette -headless" | awk '{print $2}'); do kill -9 $pid; done`