在運行PhantomJS提供的rasterize.js示例時,我發現它必須等待20秒或更長時間,直到生成網頁圖像。加快phantomjs屏幕捕捉時間?
有沒有任何可能的方法來加速這一點,而不消耗大量的資源?我基本上希望快速生成從PhantomJS加載的網頁捕獲的一系列連續圖像。如果我能夠將Phantomjs以某種方式輸出到視頻流中,那將會非常棒。
現在我會尋找一些只需在PhantomJS的1〜2秒範圍內截取網頁的截圖。如果已經有一個項目或者圖書館能夠完成這一切,那也會很棒。
在運行PhantomJS提供的rasterize.js示例時,我發現它必須等待20秒或更長時間,直到生成網頁圖像。加快phantomjs屏幕捕捉時間?
有沒有任何可能的方法來加速這一點,而不消耗大量的資源?我基本上希望快速生成從PhantomJS加載的網頁捕獲的一系列連續圖像。如果我能夠將Phantomjs以某種方式輸出到視頻流中,那將會非常棒。
現在我會尋找一些只需在PhantomJS的1〜2秒範圍內截取網頁的截圖。如果已經有一個項目或者圖書館能夠完成這一切,那也會很棒。
如果你的圖片URL被硬編碼到HTML的響應,那麼你可以做下一件事:
你可以看看這個樣本,https://github.com/eugenehp/node-crawler/blob/master/test/simple.js
像:
var Crawler = require("../lib/crawler").Crawler;
var c = new Crawler({
"maxConnections":10,
// "timeout":60,
"debug":true,
callback:function(error,result,$) {
console.log("Got page");
$("img").each(function(i,img) {
console.log(img.src);
})
}
});
c.queue(["http://jamendo.com/","http://tedxparis.com"]);
這是如何從網站中提取圖片......問題是如何使用phantomJS的捕獲屏幕功能來拍攝瀏覽器在不到20秒內在網頁請求中看到的內容。非常不同的事情。 – Lorenz03Tx
最喜歡PhantomJS等待,直到所有的資源(內聯和/或通過網頁需要的話)拍攝前可將頁面轉換爲圖像。驗證此功能的最佳方法是使用其網絡流量分析功能,有關詳細信息,請參閱http://code.google.com/p/phantomjs/wiki/QuickStart#Network_traffic中的示例。 在所有情況下,不知道要光柵化的網站和所有其他細節,很難分析問題。我也強烈建議向PhantomJS郵件列表提出這樣的問題。 –
我使用的代碼谷歌網站相同的svg(老虎)例子。我會看看網絡流量,我在Windows XP上。 – gweg
您可以使用http://phantomjscloud.com/site/docs.html而不是自己滾動(免責聲明:我寫了它) – JasonS