在运行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