Node.JS + PhantomJS + pageres 全自動 Website Screenshot (可設定 CLI 及多解像度) 折騰筆記

這涉及好幾個程式,先記下一些背景資料。

Node.js 是近年新興的 Scripting engine,用的也是 Chromium 的 V8 JavaScript Engine。
以往通常用 Perl 或 Bash Script 實現的功能幾乎都全做到,甚至連 PHP 的位置都想搶了。

PhantomJS 是一個 Headless-browser,
其實就是用 Chromium Source Code 做,沒有介面只能用 CLI 控制的 Browser。
只用 PhantomJS 其實已經能做很多東西,例如 自動填 Form 訂 iPhone 及 Screenshot 等。

NPM (Node Package Manager) 是 Node.js 成功背後一大功臣,提供 Node.js 的 Module管理,當然也解決了大部分 Dependency 的問題。

終於到主角出場:今次受上司所托研究一個叫 pageres 的 module – https://github.com/sindresorhus/pageres
Github 的 Page 沒有寫清楚,這其實是 Node.js 的 module,而且 Depend on PhantomJS。
它可以一次過 Capture 不同 Resolution 的 Website Screenshot,看似相當方便。
可是安裝這堆東西又折騰了一個多小時。

設定環境:Ubuntu 12.04 及 CentOS 5.9

Continue reading “Node.JS + PhantomJS + pageres 全自動 Website Screenshot (可設定 CLI 及多解像度) 折騰筆記”