Python selenium selenium打包exe后,在运行的过程中,如果遇到需要input()输入时,会发现被不断滚动刷新的日志把命令行输入快速顶掉了。
在使用无头模式(–headless)的时候,不断的有INFO:CONSOLE信息
通过查阅资料和不断实践,发现以下方法有效:
# 加启动配置
chrome_options = webdriver.ChromeOptions()
# 打开chrome浏览器
# 此步骤很重要,设置为开发者模式,防止被各大网站识别出来使用了Selenium
#chrome_options.add_experimental_option('excludeSwitches', ['enable-logging'])#禁止打印日志
chrome_options.add_experimental_option('excludeSwitches', ['enable-automation'])#跟上面只能选一个
chrome_options.add_argument('--headless') # 无头模式
chrome_options.add_argument('--disable-gpu') # 上面代码就是为了将Chrome不弹出界面
chrome_options.add_argument('--start-maximized')#最大化
chrome_options.add_argument('--incognito')#无痕隐身模式
chrome_options.add_argument("disable-cache")#禁用缓存
chrome_options.add_argument('disable-infobars')
chrome_options.add_argument('log-level=3')#INFO = 0 WARNING = 1 LOG_ERROR = 2 LOG_FATAL = 3 default is 0
browser = webdriver.Chrome(chrome_options=chrome_options)
禁止日志输出
chrome_options.add_argument(’–disable-gpu’)
chrome_options.add_argument(‘log-level=3’) #INFO = 0 WARNING = 1 LOG_ERROR = 2 LOG_FATAL = 3 default is 0
就可以禁用大量日志信息滚动输出。
DevTools listening on ws://127.0.0.1
I had the same issue, did a bit of digging and finally found a working solution. This should remove the DevTools message popping up:
options = webdriver.ChromeOptions()
options.add_experimental_option('excludeSwitches', ['enable-logging'])
driver = webdriver.Chrome(executable_path='' , options=options)