前言:目前conda适配了M1芯片Mac的只有miniconda,博主在自己M1 Mac上管理python就是使用miniconda进行管理的,所以在M1芯片的mac上想要使用python进行UI自动化开发,首先便需要解决两个事情,一个是解决selenium库的问题,第二个是解决如何在conda里面用python驱动webdriver。
这里使用conda安装python请参考我上一篇文章,里面讲解了为M1芯片的Mac解决python开发环境的问题,使用的也是miniconda进行python版本管理。
M1 Mac python开发环境配置:https://blog.csdn.net/weixin_47614014/article/details/118070452
一、环境准备
- M1芯片的Mac
- 已安装chrome浏览器(本文以chrome浏览器为例子进行讲解)
- 已安装miniconda并配好python环境
- 已安装pycharm并选好conda的python虚拟环境
- conda已配置国内镜像源
二、下载chrome对应的chromedriver
#1 先打开chrome浏览器,然后根据如下操作点击右上角三个点那里,然后选择帮助,再选择关于Google Chrome,查看当前chrome对应的版本号
#2 下载对应版本的chromedriver
下载地址:https://sites.google.com/a/chromium.org/chromedriver/downloads
是什么版本的chrome就下载对应版本的chromeriver就行了,不过这里有可能网站打开很慢,可以使用科学上网的方法进行下载
选择对应版本之后,选择对应的mac64-m1的chromedriver进行下载
#3 将chromedriver放到对应miniconda环境中
下载完成后对应的chromedriver存放路径应该是/Users/(your_home_name)/Downloads下
需要将下载的chromedriver移动到你的miniconda目录里,除了需要在base环境里存放之外,这里需要看你主要用哪些其它虚拟环境,也可以一起配置一下
首先使用conda info 查看conda安装路径和虚拟环境存放路径
一般安装目录会在miniforge里面
以我这里为例子,将chromedriver放到对应miniforge3目录下的bin目录里面:
sudo mv /Users/liushiwen/Downloads/chromedriver /Users/liushiwen/miniforge3/bin
然后还可以将对应chromedriver放到你用conda创建的虚拟环境里面,比如我这里创建了有py38的虚拟环境,现在将chromedriver移到我py38虚拟环境的bin目录里,miniconda的虚拟环境目录一般是在miniforge3目录里的env目录下,所以只需要
sudo cp chromedriver ../envs/py38/bin
这样基础环境和你的虚拟环境里面都会有chromedriver了,其它浏览器的webdriver配置是一样的步骤
三、安装selenium
目前使用miniconda去安装selenium会出现以下问题
安不上去,报错原因是源里未找到selenium,所以从conda去安装selenium就不行了
这里我推荐大家直接使用pip去安装selenium
pip install selenium
可以看到selenium安装成功了
虚拟环境里面的安装也一样
首先使用conda activate py38切换到对应的虚拟环境
然后直接使用pip install selenium就可以安装成功了
四、验证selenium是否能操作chromedriver
具体参考下面的图
切到python环境,输入上面代码,这时候你的 mac会出现一个提示,说chromedriver无法信任,被拒绝打开
你需要进入系统偏好设置的安全和隐私里面,然后选到通用模块,将弹出的是否信任chromedriver勾选为信任,然后再执行上面代码,这时候如果chrome打开一个空白框,说明调用成功,如下
这样你的M1芯片的mac已配置成功ui自动化的基础环境,后面就是使用开发工具进行自动化开发了