VM搭建SUSE12 + 运行selenium(离线安装)
由于服务器只能连接内网(= 没网),所以先在自己电脑上下载好相关安装包,上传至服务器中离线安装,安装过程中用自己电脑的虚拟机VM15.5搭建两个SUSE12,一个有网一个没网进行测试,VM创建虚拟机过程略,记录在服务器成功安装的过程。
一、下载相关安装包
有两种方式,一种是直接到官网下载,一种是用有网机器的命令行,通过wget方式获取,推荐第一种
1.获取chrome-rpm安装包
下载旧版本参考网址:(下载速度较慢)
http://dist.control.lth.se/public/CentOS7/x86_64/google.x86_64/Packages/
下载最新版:
直接到chrome官网–>拉到最下面–>other platforms–>linux–>选择.rpm–>下载
链接: https://www.google.cn/intl/en_uk/chrome/dev/
2.下载对应版本chromedriver
https://registry.npmmirror.com/binary.html?path=chromedriver/
可以点开任意版本内的note.txt文件可以查看对应版本:
3.获取pip安装包
使用命令查看服务器自带python版本:
# 默认查看python2版本
python -V/--version
# 查看python3版本
python3 -V/--version
如果系统中只安装了Python2,那么就只能使用pip,如果只安装了Python3,那么既可以使用pip也可以使用pip3。
pip和python对应版本如下:(网上看的,不一定准)
pip——python2.7
pip3——python3.8+
如果有网可以通过get-pip.py在线安装的话需要升级python至3.7+,如果想用pip3的话也需要升级python,这里离线安装pip,python3.4.6够用了,具体看上面的对应关系自己决定。
下面开始下载安装包:
先安装setuptools,再安装pip,需要下载两个tar.gz安装包
python官网下载setuptools:https://pypi.org/project/setuptools/
默认是最新版本,如果觉得太新可以选择旧一点的版本,过程参考下面pip
python官网下载pip: https://pypi.python.org/pypi/pip
点开默认是最新版本,服务器比较旧,pip20以上会报错,所以如图选择历史版本选择19.3.1,根据自己需要下载
或者github 下载: https://github.com/pypa/pip
4.获取selenium安装包
selenium下载:
链接: https://pypi.org/project/selenium/
需要其他库也可以提前下好
至此,所有安装包准备完毕,打包好可以copy至服务器:
二、离线安装chrome、chromedriver、pip、selenium
1.安装chrome
我把安装包都放到了/home/用户名/目录下
需要root权限,输入以下命令安装:
rpm -ivh xxx.rpm
如提示缺依赖,有两种解决办法:
1.运行以下命令,不检查依赖强制安装:
看网上说可能会出现问题,暂时没发现,想稳妥的话用第二种
rpm -ivh xxx.rpm --nodeps --force
chrome安装成功。
2.在有网的机器上下载相关依赖包,copy过去一个个安装
默认安装会清除安装包,所以下载前先打开保留安装包的选项:
找到/etc/zypp/zypp.conf文件
以下命令行修改文件读写权限:
chmod -R 777 xxx
将文件中solver.cleandepsOnRemove = false改为true
找到/etc/zypp/repos.d/目录下的源配置文件,先用命令行修改文件读写权限然后将文件内参数修改为1:
keeppackages=1
运行安装命令,安装相关依赖:
zypper install xxx
下载的依赖可以在目录/var/cache/zypp/packages中找到
把chrome安装包和相关依赖一起copy到服务器中,先一个个安装依赖,再安装chrome
chrome安装成功。
默认chrome安装位置:/opt/google/chrome
2.安装chromedriver
进入解压后的chromedriver目录,运行以下命令即可
mv chromedriver /usr/bin
3.安装 pip、selenium
运行以下安装tar.gz文件:
先安装setuptools,再安装pip
# 解压tar.gz文件
tar -zxvf xxx.tar.gz
# 进入解压后的文件夹内
cd xxx
# python 运行安装文件
python3 setup.py install
友情提示:安装完setuptools记得退回上一级文件夹
安装完setuptools和pip后,用pip install 命令安装下载好的库文件如下:
pip install xxx.whl
测试代码
进入python3,import selenium不报错,运行以下测试代码:
#!/usr/bin/python3import time
from selenium import webdriver
o = webdriver.ChromeOptions()# 设置下载位置# prefs = {'profile.default_content_settings.popups': 0, 'download.default_directory': '/home/test/Documents'}# o.add_experimental_option('prefs', prefs)# 设置无头运行
o.add_argument('--headless')
o.add_argument('--no-sandbox')
o.add_argument('--disable-gpu')
o.add_argument('--disable-dev-shm-usage')# 若chromedriver放入/usr/bin目录下则无需设置该路径# chromedriver_path = '/usr/bin/chromedriver'# service = Service(executable_path=chromedriver_path)
driver = webdriver.Chrome(chrome_options=o)
driver.get('https://pypi.org/project/selenium/#files')# 打印网页源码
page = driver.page_source
print(page)# 点击下载按钮# driver.find_element('partial link text', 'selenium-4.5.0-py3-none-any.whl').click()print('success')
time.sleep(5)
driver.close()
driver.quit()
如果访问内网网址需要配置host:
1.编辑host
vi /etc/hosts
2.按’i‘,输入IP+网址,配置host,按"esc",再输入":wq",保存退出
3.reboot使host生效(没有reboot也成功了)
另
linux下运行py文件的两种方式:
1.在py文件中第一行添加,需要root
#!/usr/bin/python3
进入该文件所在目录下,右键在终端中打开,使用以下命令直接运行:
./xxx.py
2.进入该文件所在目录下,使用python文件运行
python3 xxx.py
完
版权归原作者 樱桃小完犊子 所有, 如有侵权,请联系我们删除。