我了解如何拍摄整个网页的屏幕截图,但如何使用phantomjs捕获特定元素的视图。 我正在尝试按照
var page = require('webpage').create();
page.content = page.open('https://www.google.co.in/');
page.evaluate(function() {
var canvas = document.getElementById('hplogo');
var ctx = canvas.getContext('2d');
var img = new Image();
var imgdata = document.querySelectorAll('img');
img.src = imgdata[0].src;
var pattern = ctx.createPattern(img, 'repeat');
ctx.fillStyle = pattern;
ctx.fillRect(0, 0, 300, 300);
});
page.render('canvas.png');
phantom.exit();
以上代码无法正常工作,以上代码中的工作是通过id选择Google网页img部分的元素,然后创建一个图像对象并分配查询选定标签IMG的src,然后填写模式,我的时间的辛苦工作没有取得任何结果。
我想要的是:我想要通过'page.open'呈现的img元素的屏幕截图,可以通过查询选择器选择它并输出png文件。欢迎使用PHANTOMJS的其他替代方法。 在此先感谢。