您的位置:首页 > 运维架构 > Linux

centos7无GUI情况安装Xvfb、selenium、chrome

2018-09-07 14:55 1551 查看

centos7服务器无GUI情况下安装使用Xvfb、selenium、chrome和selenium-server

2016年10月31日15:24:24阅读数:12192更多

个人分类:centosselenium

</pre><pre>

最近需要用到selenium浏览器抓取,在windows下对照chrome浏览器开发的代码,在linux服务器上换成phantomjs驱动后,却不能运行了,通过截图发现phantomjs渲染效果和chrome不同。于是考虑在centos上安装chrome浏览器。

下面是做的一些记录。

1,centos7安装google-chrome

(1)添加chrome的repo源

vi/etc/yum.repos.d/google.repo

[google]name=Google-x86_64baseurl=http://dl.google.com/linux/rpm/stable/x86_64enabled=1gpgcheck=0gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub

(2)安装

yumupdate,然后yuminstallgoogle-chrome-stable

这时候在非root账号下运行google-chrome会输出没有显示器,无法启动之类的。

不知道为什么不能在root账号下运行。

2,安装Xvfb

yumupdate

yuminstallXvfb

yum-installlibXfont

yuminstallxorg-x11-fonts*

3,一个小测试

(1)安装selenium、pyvirtualdisplay

pipinstallselenium

pipinstallpyvirtualdisplay

(2)下载chromedriver

从https://sites.google.com/a/chromium.org/chromedriver/home下载chromedriver

配置在PATH路径或者在脚本中指定路径

(3)demo

vimtest.py



#-*-coding:utf-8-*-



fromseleniumimportwebdriver

frompyvirtualdisplayimportDisplay

display=Display(visible=0,size=(800,600))

display.start()

driver=webdriver.Chrome("./chromedriver")

driver.get("http://www.baidu.com")

printdriver.page_source



driver.quit()

display.stop()

期望输出百度首页的html文档。

4,seleniumserver

1,nohupXvfb-ac:7-screen01280x1024x8>/dev/null2>&1&

2,exportDISPLAY=:7

3,java-jarselenium-server-standalone-3.0.1.jar

4,



<prename="code"class="python">#-*-coding:utf-8-*-

fromseleniumimportwebdriver

fromselenium.webdriver.common.desired_capabilitiesimportDesiredCapabilities

driver=webdriver.Remote(

command_executor='http://127.0.0.1:4444/wd/hub',

desired_capabilities=DesiredCapabilities.CHROME)

driver.get("http://www.baidu.com")

printdriver.page_source

driver.quit()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Selenium CentOS Linux Chrome