测试人社区

selenium中chromedriver在pycharm中无法打开浏览器的解决方案(mac)

关于配置好环境变量,终端也可以打印版本信息,但是pycharm就是运行不了,一运行就报错,跟录播老师一样的代码,一样的操作步骤,怎么我就是不能运行呢?

(请忽略我丑到爆的目录结构。。此问题跟目录结构无关)

·首先我是按着录播老师的操作一步一步来的
环境变量配置


文件路径

image

全局调用

·环境变量配好了,终端中也可以正常调用,但是一执行代码就报很长一段的错误。(见下图,因为报错信息巨长无比,为了不影响观感就不全贴出来了,为了大家好分辨贴两张。ps:一般遇见巨长的报错,就是这个问题)


今天废了一整天的劲,才知道这个问题到底怎么解决,首先感谢学习委员通通、权和同学月月的耐心帮助,是真的烦了他们一整天啊,哈哈,我都不好意思问了快。

解决这个问题很简单,只需要把charomedriver的文件需要放到/usr/local/bin目录下,然后配置环境变量就可以解决了。但是!!!问题来了,小伙伴们注意这里的路径是系统目录,系统目录是不支持复制和移动文件进去的。

使用co命令会报如下错误:cp: /usr/bin/chromedriver: Read-only file system

这是因为mac系统从一次大更新之后,电脑启用了SIP(System Integrity Protection),增加了rootless机制,导致即使在root权限下依然无法修改文件,所以我们需要首先关闭这个保护机制。

关闭这个保护机制需要你重启电脑,在你看到苹果logo的时候长按command+R键,选择你的账户(注意:这里你的触摸板你之前设置的轻触点击已经失效,需要你按下去,而不是轻触了,之后的操作都要按下去才能触发点击)

选择完账户后输入你的电脑密码,进入macOS实用工具页面,然后点击菜单栏中的实用工具,再点击终端!终端!终端!

进入终端后,输入csrutil disable回车后如下图

这时,重启电脑,到此第一步已经完成,接下来看第二步

第二步登录root账户,但是一般情况下,root权限是关闭,这时就需要你自己手动去开启root权限

首先点击系统偏好设置-用户与群组-点击左下方的小锁-输入电脑密码-点击登录选项-点击加入-点击打开实用工具-再次点击左下方的小锁-输入密码-点击菜单栏的编辑-点击启用root账户-设置密码即可关闭该页面(注:用完后关闭root权限,操作流程是一样的)

然后打开终端输入:~ su root 输入密码,然后使用cp或者mv命令(我这边用的是cp命令:cp chromedriver /usr/local/bin ,注意空格 )然后cd / 进入根目录下确认命令是否生效cd /usr/local/bin,查看bin目录下是否存在chromedriver文件。

最后配置环境变量vim ~/.bash_profile进入后按“i”输入环境变量,按esc输入“:wq”(保存并退出,千万别忘了保存啊~~~)


配置好后是这样的,注意路径不要写错了

再在终端输入source ~/.bash_profile命令更新环境变量。(如不想复原请重启pycharm或重启电脑,这里建议执行下面的恢复操作,以防后续有其他影响)

然后开始复原
1.关闭root账户权限

2.开启SIP防卫程序
重启电脑,在苹果logo页面长按command+R,进入恢复模式,点击终端(不知道终端在哪的同学查看上面的步骤),在终端中输入csrutil enable,重启电脑即可。

上述方法就可以解决mac中配置chromedriver环境变量无效的问题。

大功告成~ღ( ´・ᴗ・` )比心