访问PhantomJS中的图像维度
我试图找到一个页面下载的图像的大小;显而易见的解决办法是访问PhantomJS中的图像维度,phantomjs,Phantomjs,我试图找到一个页面下载的图像的大小;显而易见的解决办法是 var imgs = []; var imgTags = document.getElementsByTagName('img'); for (i = 0; i < imgTags.length; i++) { var img = imgTags[i]; imgs.push({src: img.src, h: img.height, w: img.width}); } var-imgs=[]; var imgTag
var imgs = [];
var imgTags = document.getElementsByTagName('img');
for (i = 0; i < imgTags.length; i++) {
var img = imgTags[i];
imgs.push({src: img.src, h: img.height, w: img.width});
}
var-imgs=[];
var imgTags=document.getElementsByTagName('img');
对于(i=0;i
但这只会检索渲染的大小-例如,无处不在的spacer.gif
将是1x4、4x4等,而它显然是1x1
此外,这种文档扫描似乎无法拾取下载的图像,但没有用于img
标记:CSS、背景等
基于WebKit的浏览器中的inspector似乎非常能够呈现预览—它从何处获取?希望有两个重要的属性:naturalWidth和naturalHeight(doc) 下面是一个示例脚本(stackoverflow的第一个图像)
希望有两个重要的属性:自然宽度和自然高度(doc) 下面是一个示例脚本(stackoverflow的第一个图像)
var page = require('webpage').create();
var url = 'http://www.stackoverflow.com/';
page.open(url, function(status) {
var first_image_dim = page.evaluate(function() {
return {width :$('img')[0].naturalWidth, height:$('img')[0].naturalHeight};
});
console.log(JSON.stringify(first_image_dim));
phantom.exit();
});