centos7下使用chrome headless模式进行自动化

最近完成了自动化框架得编写,由于我们自动化运行基本上都是在linux服务器上运行,所以web自动化通常用phantomjs来运行,但是最近发现运行时总是弹出提示大概意思就是要废弃对phantomjs得支持,并且phantomjs很久都没有维护了,而且很多元素不能够使用phantomjs来识别,这就意味着必须使用chrome或者firefox得headless模式了,所以才有了今天的尝试
服务器 : centos7.2
selenium :3.9.0
chromedriver:2.35.0
chrome:64

第一部分:安装chrome

1.配置yum源,使用root账户

cd /etc/yum.repos.d/
vi google-chrome.repo

将下面内容写入文件

[google-chrome]
name=google-chrome
baseurl=http://dl.google.com/linux/chrome/rpm/stable/$basearch
enabled=1
gpgcheck=1
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub

2.安装

yum -y install google-chrome-stable --nogpgcheck

3.验证

[root@localhost yum.repos.d]# google-chrome -version
Google Chrome 64.0.3282.140

第二部分:配置自动化环境与运行

1.下载chromedriver

wget https://chromedriver.storage.googleapis.com/2.35/chromedriver_linux64.zip

通常上面由于墙得问题都会下载失败,可以使用下面得方式进行

2.进入淘宝npm网站,进入相应栏目进行下载即可,下载过后放到服务器相应位置,可以设置为环境变量,这样代码运行就不需要设置路径了

centos7下使用chrome headless模式进行自动化_第1张图片

3.安装selenium(自行安装)
4.运行

from selenium import webdriver
option = webdriver.ChromeOptions()
option.add_argument('headless')
driver = webdriver.Chrome(executable_path='./chromedriver', chrome_options=option)
driver.get("http://www.baidu.com")
print(driver.title)
driver.quit()

运行完成可以打出结果就ok了

[hjc@localhost ~]$ python test.py
百度一下,你就知道

你可能感兴趣的:(centos7下使用chrome headless模式进行自动化)