命令行启动Chrome调试模式
启动的时候,默认是关闭了调试端口的,如果要对一个目标 Chrome PC 浏览器进行调试,那么启动的时候,可以通过传递参数来开启 Chrome 的调试开关。
mac下:
sudo /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222
windows下:
chrome --remote-debugging-port=9222
注:
1)这里的port可以传任意端口,但是要注意端口冲突问题。
2)window下要在命令行执行chrome命令需要将chrome路径添加到环境变量下,或者切换到chrome.exe路径下执行。
windows查看端口情况:
netstat -ano
查看指定端口使用情况
netstat -ano | findstr "xxxx"
最后的四位数字就是进程pid。
Linux查看端口方法如下:
ps -ef 和netstat -anp与管道符以及linux三剑客搭配使用效果更佳。
selenium设置chrome浏览器debugger模式
options = Options()
options.debugger_address = "localhost:9222"
self.driver = webdriver.Chrome(options=options)
这里的端口与命令行启动浏览器时指定的端口一致。
下面就是遇到的坑了~~
菜鸡姜(小编)在ide内执行用例时报错连接该端口失败
然后经检查是开启多个chrome进程问题,关闭所有chrome进程后,命令行启动指定端口浏览器后,浏览器崩溃。
其他chrome问题见下图。
经过十几分钟的百度Google和向前辈大佬请教后,自己找到了问题所在。
解决过程:
首先是按照上述图片排查了一遍问题,发现不是配置问题,然后查看端口进程后,也不是端口冲突问题,
然后发现命令行直接输入chrome打开浏览器是正常的,那么想到原因可能是启动chrome的参数配置问题。除了启动命令设置了debugging模式,想到之前解决跨域和其他问题,修改过chrome启动文件的属性值。尝试去掉后再次执行命令调试模式启动正常,开心~
额,第二天就不开心了,发现又用不了了,看来问题找错了。然后,继续百度Google,发现了以下帖子,终于找到症状了。完美解决的自己的问题,也搞懂了原因。
转:解决浏览器错误STATUS_INVALID_IMAGE_HASH的问题
转:Google Chrome 错误代码“STATUS_INVALID_IMAGE_HASH”
最后,本人小白一枚,第一次写博客,有啥术语或者写的错误的地方还望大家多多指出,加(接)下来也会多多努力,干吧类~