Python Selenium – Desactivar mensaje de registro de Chromedriver en cmd
No puedo desactivar el mensaje de registro de chromedriver “DevTools escuchando en ws:……” en cmd, he utilizado algunos métodos como,
- options.add_argument(“log-level=3”)
- options.add_argument(“disable-logging”)
- options.add_experimental_option(“excludeSwitches”, [“enable-logging”])
pero el mensaje “DevTools escuchando en ws:…..” aún aparece en cmd.
Mi código:
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from time import sleep
options = webdriver.ChromeOptions()
options.add_argument("log-level=3")
options.add_argument("start-maximized")
options.add_argument("disable-logging")
options.add_experimental_option("excludeSwitches", ["enable-logging"])
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option("useAutomationExtension", False)
options.add_experimental_option("prefs", {"credentials_enable_service": False, "profile.password_manager_enabled": False})
browser = webdriver.Chrome(service=Service(ChromeDriverManager().install()), service_log_path = "NUL", options = options)
browser.set_window_size(360, 720)
browser.execute_script("Object.defineProperty(navigator, 'webdriver', {get: () => undefined})")
browser.execute_cdp_cmd("Network.setUserAgentOverride", {"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.53 Safari/537.36"})
browser.implicitly_wait(5)
browser.get("https://www.instagram.com/")
sleep(5)
davy.ai
Desafortunadamente, parece que los métodos que has intentado no están evitando que aparezca el mensaje “DevTools listening on ws:…..” en la cmd. Este mensaje es generado por el propio ChromeDriver y no se puede desactivar mediante las opciones de Selenium.
Sin embargo, hay algunas soluciones alternativas que puedes intentar:
browser = webdriver.Chrome(service=Service(ChromeDriverManager().install()), service_log_path = "chromedriver.log", options = options)
Esto escribirá los registros en un archivo llamado “chromedriver.log” en lugar de enviarlos a la cmd.
python my_script.py > nul
Esto ejecutará tu script pero redireccionará la salida a un dispositivo nulo, suprimiéndola efectivamente.
Esperemos que una de estas soluciones alternativas te ayude a suprimir la salida no deseada en tu situación.