[ 生活需要仪式感 ]

0%

Linux+Cutycapt+Xvfb实现网页快照

使用cutycapt能够在linux甚至php上实现网页快照的功能,方便业务上的需求。

环境搭建

操作系统: Ubuntu 14.04.4 LTS / CentOS 6.5 (Final)

1
2
3
4
5
6
7
8
9
10
11
12
-----------Ubuntu-----------
sudo apt-get update
# 安装相关包
sudo apt-get install libqt4-webkit libqt4-dev g++
# 安装主要软件
sudo apt-get install xvfb cutycapt

-----------CentOS-----------
#安装主要软件
yum install CutyCapt
#安装Xvfb(获得虚拟桌面项配合CutyCapt进行网页快照)
yum install Xvfb

使用Cutycapt将HTML转化为PNG

1
2
#截取or2.in网站,输出为or2.png
xvfb-run -s "-screen 0 1280x1200x24" cutycapt --url=http://or2.in --out=or2.png
  1. 网页快照需要先开xvfb服务,然后使用cutycapt来抓取页面。如果一次截多张图,我认为应该要把xvfb服务作为后台守护进程比较好。
  1. CentOS中,要把命令的cutpcapt改为CutpCapt

出现中文方框乱码

因为系统没有中文,所以要安装中文字库。

1
2
3
4
5
6
-----------Ubuntu-----------
apt-get install ttf-wqy-zenhei
fc-cache -v

-----------CentOS-----------
yum -y groupinstall chinese-support

效果图