2011-11-03 63 views
1

如何遠程獲取網頁打印屏幕?使用linux/unix或php工具。 用戶輸入頁面地址,我想將外觀保存在服務器上(作爲圖像)。獲取網頁打印屏幕,php/unix

+0

另存爲圖片?另存爲html文件? – ManseUK

+0

你可以使用wget命令? –

+0

ManseUK>作爲圖片 – lolalola

回答

2

您需要一個無頭網頁瀏覽器(即您可以從命令行運行而不需要圖形界面的瀏覽器)。其中一種可能性是PhantomJS,它使用webkit渲染引擎。

具體而言,您需要render() method

從渲染例如在examples page,以下內容作爲rasterize.js

var page = new WebPage(), 
    address, output, size; 

if (phantom.args.length < 2 || phantom.args.length > 3) { 
    console.log('Usage: rasterize.js URL filename'); 
    phantom.exit(); 
} else { 
    address = phantom.args[0]; 
    output = phantom.args[1]; 
    page.viewportSize = { width: 600, height: 600 }; 
    page.open(address, function (status) { 
     if (status !== 'success') { 
      console.log('Unable to load the address!'); 
     } else { 
      window.setTimeout(function() { 
       page.render(output); 
       phantom.exit(); 
      }, 200); 
     } 
    }); 
} 

,然後運行它:

phantomjs rasterize.js http://ariya.github.com/svg/tiger.svg tiger.png