在本篇教程中,我會描述如何将一個html網頁使用cutycapt轉化成png圖檔。

<a target="_blank"></a>
這是在特定linux發行版上的安裝指令。
$ sudo apt-get install cutycapt
$ sudo yum install subversion qt-devel qtwebkit-devel gcc-c++ make
$ svn co svn://svn.code.sf.net/p/cutycapt/code/ cutycapt
$ cd cutycapt/cutycapt
使用文本編輯器打開cutycapt.hpp,并且加入在檔案的開頭加上下面的兩行。
#include
最後,如下編譯并安裝cutycapt。
$ qmake-qt4
$ make
$ sudo cp cutycapt /usr/local/bin/cutycapt
将一個html頁面截圖成一個png圖檔,隻要使用下面的格式運作cutycapt。
$ cutycapt --url=http://www.cnn.com --out=cnn.png
要将html頁面儲存成不同的格式(比如,pdf),隻要适當地指定輸出檔案。
$ cutycapt --url=http://www.cnn.com --out=cnn.pdf
下圖顯示了cutycapt指令選項。
雖然cutycapt是一個指令行工具,但是它需要x服務運作。如果你嘗試在不含x服務的機器上運作,你會得到下面這個錯誤:
cutycapt: cannot connect to x server :0
如果你要不含x的伺服器上運作cutycapt,你可以在伺服器上安裝xvfb(輕量級“假的”x11 服務)。這樣cutycapt就不會報錯了。
要在debian, ubuntu 或者 linux mint 上安裝xvfb:
$ sudo apt-get install xvfb
要在fedora, centos 或者 rhel 上安裝xvfb:
$ sudo yum install xvfb
在安裝xvfb之後,接下來像這樣運作cutycapt。
$ xvfb-run --server-args="-screen 0, 1280x1200x24" cutycapt --url=http://www.cnn.com --out=cnn.png
它首先會運作xbfb服務,接着使用cutycapt來抓取網頁。是以它可能會花費更長的時間。如果你想要截圖多張截圖,你可能事先需要将xvfb作為背景守護程序啟動。
原文釋出時間為:2014-03-18
本文來自雲栖社群合作夥伴“linux中國”