Dip*_*lui 7 python selenium python-3.x selenium-chromedriver selenium-webdriver
我想使用 Selenium ChromeDriver 打开 Chrome 浏览器,而不将 Chrome 消息输出到控制台。
from selenium import webdriver
driver = webdriver.Chrome(r'C:\Users\u1\Documents\scripts\chromedriver.exe')
Run Code Online (Sandbox Code Playgroud)
from selenium import webdriver
driver = webdriver.Chrome(r'C:\Users\u1\Documents\scripts\chromedriver.exe')
Run Code Online (Sandbox Code Playgroud)
我想隐藏输出消息“DevTools Listening on...”
from selenium import webdriver
import contextlib
with contextlib.redirect_stdout(None):
driver = webdriver.Chrome(r'C:\Users\u1\Documents\scripts\chromedriver.exe')
Run Code Online (Sandbox Code Playgroud)
from selenium import webdriver
import subprocess
devnull = subprocess.DEVNULL
subprocess.Popen(open_browser(), stdout=devnull, stderr=devnull)
def open_browser():
driver = webdriver.Chrome(r'C:\Users\u1\Documents\scripts\chromedriver.exe')
Run Code Online (Sandbox Code Playgroud)
chrome_options = Options()
chrome_options.add_argument("--log-level=3")
driver = webdriver.Chrome(r'C:\Users\u1\Documents\scripts\chromedriver.exe', chrome_options=chrome_options)
Run Code Online (Sandbox Code Playgroud)
但该消息仍然显示。如何在 Python 中隐藏输出消息“DevTools Listening on...”?
小智 13
将此选项添加到您的驱动程序中,您的问题将得到解决:
options = webdriver.ChromeOptions()<br>
options.add_experimental_option('excludeSwitches', ['enable-logging'])
Run Code Online (Sandbox Code Playgroud)
答案是:
基于 Chanticleer 在 python 中隐藏 chromeDriver 控制台
找到并编辑此文件,如下所示:位于 Python 文件夹中的 Lib\site-packages\selenium\webdriver\common\services.py 中。
通过添加创建标志来编辑 Start() 函数:creationflags=CREATE_NO_WINDOW
from win32process import CREATE_NO_WINDOW
def start(self):
"""
Starts the Service.
:Exceptions:
- WebDriverException : Raised either when it can't start the service
or when it can't connect to the service
"""
try:
cmd = [self.path]
cmd.extend(self.command_line_args())
self.process = subprocess.Popen(cmd, env=self.env,
close_fds=platform.system() != 'Windows',
stdout=self.log_file, stderr=self.log_file, creationflags=CREATE_NO_WINDOW)
except TypeError:
raise
Run Code Online (Sandbox Code Playgroud)
非常适合我(python3.7,selenium 3.141.0)
请相信我花了很多时间寻找答案。
这些是 chrome 消息,因此您需要设置 Chrome 日志级别的选项来隐藏这些消息,将日志级别设置为--log-level=3应该足够了(仅致命日志消息。
from selenium.webdriver.chrome.options import Options
[...]
chrome-options = Options()
chrome-options.add_argument("--log-level=3")
driver = webdriver.Chrome(chrome_options=chrome-options)
Run Code Online (Sandbox Code Playgroud)
出于好奇,我想问一下为什么?
| 归档时间: |
|
| 查看次数: |
12701 次 |
| 最近记录: |