同福

Python的selenium库的headless模式下隐藏控制台信息【20210325】

介绍

介绍

之前福哥给大家讲过关于Python的selenium库的使用技巧,通过selenium库可以调用浏览器打开网页并且进行自动化操作的方法。

selenium库有个headless模式,就是headless模式下不会弹出浏览器窗口,可以让自动化过程更像一个命令行程序在运行。不过这个headless模式下在终端会打印巨多的控制台信息,这些信息无法通过代码关闭,简直就是刷屏神器一样的存在,怎么办?

ea05b0c545f2c9c5.jpg

部分环境里面有可能没有win32process这个库,可以通过下面的命令安装

pip install pypiwin32

修改start方法

修改start方法的subprocess.Popen的调用代码,加入creationflags=CREATE_NO_WINDOW参数

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)

6a436705246e62ec.jpg

总结

经过前面的改造后,再使用selenium的headless模式编写程序的时候就不会再有控制台信息刷屏了~~