小编Lad*_*018的帖子

如何使用 Python 退出通过 GeckoDriver 和 Selenium 启动的所有 Firefox 进程

我正在使用 python 3.7 + selenium + geckodriver.exe + firefox 70.0.1x64,我知道driver.quit()可以关闭firefox窗口,但在某些情况下我无法完全退出firefox,我不知道为什么,这是我的代码:

from selenium import webdriver
import time

def func1():
    driver = webdriver.Firefox()
    i = 0
    while True:
        try:
            if i > 10 and driver is not None:
                driver.quit()
                driver = None
                print('quit success')
            i += 1
            print(i)
            time.sleep(1)
        except KeyboardInterrupt:
            if driver is not None:
                driver.quit()
                driver = None
                print('keyboard quit success')

if __name__ == '__main__':
    func1()
Run Code Online (Sandbox Code Playgroud)

通过这段代码,有两种方法可以关闭 Firefox 窗口:

1-等待 10 秒。

2-使用 Ctrl+C。

然后我测试方法1

python test1.py
Run Code Online (Sandbox Code Playgroud)

当firefox …

python firefox selenium selenium-firefoxdriver geckodriver

5
推荐指数
1
解决办法
3813
查看次数

如何通过 Selenium 和 Python 配置 GeckoDriver 的日志级别和日志位置?

我是python新手,我写了一个程序来收集信息(python+selenium+geckodriver+firefox),一切正常,但是geckodriver.exe生成的日志太多,有时geckodriver.log的单个文件大小甚至达到8GB 。

我搜索了 Galaxy、Google 和 StackOverflow,我找不到禁用 geckodriver.log 的解决方案,这个问题与我的类似,我知道使用一些参数可以减少日志

geckodriver.exe --log fatal
Run Code Online (Sandbox Code Playgroud)

我知道 python 可以分配 geckodriver 的路径

driver=webdriver.Firefox(executable_path='C:\geckodriver.exe')
Run Code Online (Sandbox Code Playgroud)

是否可以将它们组合在一起?如下所示:

driver=webdriver.Firefox(executable_path='C:\geckodriver.exe --log fatal')
Run Code Online (Sandbox Code Playgroud)

我尝试过但失败了,有人可以帮助我吗?谢谢!

python firefox selenium webdriver geckodriver

3
推荐指数
1
解决办法
8517
查看次数