1. 问题起因:
Selenium设置了headless,导致cmd控制台不断输出CONSOLE信息
# 因为在云服务器上运行,去除可视界面,如需显示可视界面,将下面6行代码注释掉
# 谷歌文档提到需要加上这个属性来规避bug
chrome_options.add_argument('--disable-gpu')
# 隐身模式(无痕模式)
chrome_options.add_argument('--incognito')
# 最大化运行(全屏窗口),不设置,取元素会报错
chrome_options.add_argument('--start-maximized')
# 浏览器不提供可视化页面. linux下如果系统不支持可视化不加这条会启动失败
chrome_options.add_argument('--headless')
# 解决DevToolsActivePort文件不存在的报错
chrome_options.add_argument("--no-sandbox")
# 不加载图片,提升运行速度
chrome_options.add_argument('blink-settings=imagesEnabled=false')
# 隐藏滚动条, 应对一些特殊页面
chrome_options.add_argument('--hide-scrollbars')
# 禁用插件
chrome_options.add_argument('--disable-plugins')
chrome_options.add_experimental_option('excludeSwitches', ['enable-logging'])
chrome_options.add_experimental_option("excludeSwitches", ['enable-automation'])
2. 解决:
修改此处代码(根据具体的安装目录来)
修改C:\Program Files\Python39\Lib\site-packages\selenium\webdriver\common\service.py
提供改好的文件解压后直接替换
(https://hogar.lanzouy.com/iqW3Kxte7ha)
增加
from win32process import CREATE_NO_WINDOW
修改
creationflags=CREATE_NO_WINDOW
完再次运行发现窗口闪烁,安装pywin32即可解决
重要!重要!重要!
pip install pywin32