我试图从网站上截取2个屏幕截图 - 一个注入网站之前,一个之后。
问题是 - 当我尝试在加载所有资源之后(以及在我注入脚本之前)拍摄第一个屏幕截图时 - 它不会从onInitialized函数内部创建屏幕截图..任何线索为什么?< / p>
page.onInitialized = function () {
page.render('e1.png');
page.evaluate(function () {
<here i'm injectingo the page>
});
};
另外 - 如何在两个类似js的屏幕截图之间进行比较?我用npm安装了软件包,并且我用phantomjs运行测试,那么将通过phantomjs创建的屏幕截图保存到变量然后使用resemble.js的方法是什么? 我很高兴看到一个符合我需要的代码。 非常感谢!!
答案 0 :(得分:0)
在创建网页后调用,但在加载URL之前 。
您需要使用page.onLoadFinished
或page.open
中的回调等待,直到加载了包含其所有资源的页面。请注意,如果页面是通过JavaScript动态生成的,那么您需要等待setTimeout
。