pyhton selenium爬虫控制台信息输出问题解决

复制代码

复制代码
from selenium.webdriver.chrome.options import Options  # 无头浏览器模块
# 创建一个参数对象,用来控制chrome
chrome_options = Options()
# 后面的两个是固定写法 必须这么写 用来控制chrome以无界面方式打开
chrome_options.add_argument('--headless')
chrome_options.add_argument('--disable-gpu')
# 下面一行用于关闭编译后控制台会显示Devtools的信息
chrome_options.add_experimental_option('excludeSwitches', ['enable-logging'])
path = r'F:\pythonProject1\chromedriver\chromedriver.exe'
# path = r'D:\chromedriver\chromedriver.exe'  # 设置谷歌浏览器驱动路径
self.driver = webdriver.Chrome(executable_path=path, options=chrome_options)  # 打开谷歌浏览器驱动,并将上面配置的控制信息options传入
复制代码

出现‘WARNING:dns_config_service_win.cc’输出时,给电脑配置静态DNS可以解决,如:8.8.8.8
出现‘INFO:CPNSOLE’输出时,修改F:\python\Lib\site-packages\selenium\webdriver\common\service.py源代码解决,代码如下:
复制代码
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,
                                            stdin=PIPE,
                                            creationflags=CREATE_NO_WINDOW)
复制代码

导入库后,在start方法下的subprocess.Popen()里面添加‘creationflags=CREATE_NO_WINDOW’,可以解决控制输出INFO问题

 

复制代码
posted @   柳道  阅读(605)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示