【爬虫】Linux上使用selenium + chrome + xvfb 实现无界面的网页截图

前言


本问介绍一种在无桌面(无 X server)的linux系统下,不用打开浏览器就可以完成网页页面截图的方法,之前多数用的是PhantomJS + Selenium的方法,但是我使用 PhantomJS + Selenium 时报错:

Selenium support for PhantomJS has been deprecated, please use
headless

原来是二者已分手,我们只能使用另一种方法,提供一个虚拟的界面。


安装xvfb以及pyvirtualdisplay


xvfb概述

X server是linux系统里面图形接口服务器的简称。windows系统的界面是这个系统不可分割的一部分,各种窗口操作界面显示都是由系统核心直接管理的,而linux的图形界面并比较常见的linux界面操作环境有KDE和GNOME,为它们提供系统支持的就是X server,而并非linux核心。

xvfb就是这么一个提供虚拟界面的工具, 这个工具相当于一个wrapper, 给应用程序提供虚拟的 X server(X server是Linux系统里面图形接口服务器的简称,常见的有KDE和GNOME)。

总结一句话就是 xvfb可以理解为虚拟的 linux界面,可以供应用程序使用。

安装xvfb

在ubuntu16.04系统下,使用如下命令安装

sudo apt-get install xvfb
验证使用
Xvfb :99 -ac 2>/dev/null &
export DISPLAY=:99   

firefox
安装pyvir
  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值