如何阻止 selenium 在 python 中打印 webdriver-manager 消息?

How to stop selenium from printing webdriver-manager messages in python?

每次启动新的网络驱动程序时,控制台都会写入以下文本:

[WDM] - ====== WebDriver manager ======
[WDM] - Current google-chrome version is 102.0.5005
[WDM] - Get LATEST chromedriver version for 102.0.5005 google-chrome
[WDM] - Driver [C:\Users\klaas\.wdm\drivers\chromedriver\win322.0.5005.61\chromedriver.exe] found in cache

我的目标是阻止 selenium 将此消息打印到控制台。与此主题相似的 Stack Overflow 线程显示了两个对我不起作用的选项。第一个是:

from selenium.webdriver.chrome.options import Options

options = Options()
options.add_experimental_option("excludeSwitches", ["enable-logging"])
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=options)

第二个是:

import logging
from selenium.webdriver.remote.remote_connection import LOGGER

LOGGER.setLevel(logging.WARNING)

这两种解决方案对其他一些人都有效,但对我无效。有没有其他方法可以阻止 selenium 打印 webdriver 消息?

解法: 正如 MohitC 所建议的,以下代码阻止了 webdriver-manager 消息的打印:

import logging
logging.getLogger('WDM').setLevel(logging.NOTSET)

这些是 webdriver-manager 日志。如果您不使用或禁用日志记录,您可以卸载它,如下所示

import os
os.environ['WDM_LOG'] = "false"

你也可以试试

import logging
logging.getLogger('WDM').setLevel(logging.NOTSET)