美文网首页
linux下python+selenium环境搭建

linux下python+selenium环境搭建

作者: 谦虚的鸵鸟 | 来源:发表于2023-04-18 15:41 被阅读0次

1 首先下载源tar包

可利用linux自带下载工具wget下载,如下所示:wget https://www.python.org/ftp/python/3.9.10/Python-3.9.10.tgz

直接在本机上下载以后,rx上传。下载地址:https://www.python.org/ftp/python/3.9.10/Python-3.9.10.tgz

2 下载完成后到下载目录下,解压

tar -xzvf Python-3.9.10.tgz

3 编译

(1)编译前先在/usr/local建一个文件夹python3(作为python的安装路径,以免覆盖老的版本)

mkdir /usr/local/python3

(2)开始编译安装(在解压目录下进行)

源码的安装一般由3个步骤组成:配置(configure)、编译(make)、安装(make install)

cd Python-3.6.0

./configure --with-ssl

./configure --prefix=/usr/local/python3  #配置安装目录

make  #编译

make install  #安装

4 建立软连接

ln -sf /usr/local/python3/bin/python3.9 /usr/bin/python              #将python3.9指向python

ln -sf /usr/local/python3/bin/pip3 /usr/bin/pip                             #将pip3指向pip

5 查看python版本

python --version   或  python -V

6 遇到的问题解决

(1)yum命令报错: File "/usr/bin/yum", line 30

    except KeyboardInterrupt, e:

                            ^

SyntaxError: invalid syntax

原因:centos中python从2.x升级到3.x后,将python默认设置为python3了,而当前yum使用的仍是python2导致python3解析python2的语法错误

解决办法:查了很多资料,都说是将vim /usr/bin/yum文件中第一行python指向python2旧版本,可是我指向后发现yum命令还是无法执行,报错:-bash: /usr/bin/yum: /usr/bin/python2: bad interpreter: No such file or directory

在/usr/bin下找不到对应的python2编译器,原来是我在安装python3时没有进行原python的备份,导致python直接指向python3,丢失了python2,没办法在其他centos环境中找到对应的python编译器,更名为python2放在/usr/bin下,并授权chmod -R 777 python2,此时执行yum命令正确了

(2)python执行selenium web自动化.py文件,报错:找不到Chrome

原因:web运行时使用chrome浏览器,而linux中未安装对应版本的chrome

解决办法:下载chrome:wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm

安装chrome:yum install ./google-chrome-stable_current_x86_64.rpm

安装后验证版本号:google-chrome --version

根据chrome版本号下载对应的linux版本的chromedriver:https://chromedriver.storage.googleapis.com/index.html

chromedriver进行解压:unzip chromedriver_linux64.zip

解压目录下对chromedriver授权:chmod -X chromedriver (或chmod -R 777 chromedriver)

将chromedriver移动或者软连接到/usr/bin下:移动>>mv chromedriver /usr/bin           软连接>>ln -s 源文件 /usr/bin/chromedriver

输入chromedriver验证是否成功

(3)问题2解决后,python再次执行selenium web自动化.py文件,又报错:/usr/bin/google chrome不再运行,因此ChromeDriver假设chrome已经崩溃

selenium在linux上运行会需要一些配置,加上配置就好了

options.add_argument('--headless')      # 无界面模式

options.add_argument('--no-sandbox')    # 以最高权限运行

相关文章

网友评论

      本文标题:linux下python+selenium环境搭建

      本文链接:https://www.haomeiwen.com/subject/kiyhjdtx.html