PhantomJS:当HTML有资源时,setContent不起作用

这个脚本有效:

var page = require('webpage').create(); 

var html = '

但是向img添加src属性会使其无声地失败(page.render返回false并且不生成图像).

设置page.content直接适用于这两种情况,但相对URL则不然.加载资源(如链接)的其他标记也会发生同样的情况.链接资源是否存在无关紧要.测试1.8.1和1.9.2.

这是一个错误还是我误解了API?

最佳答案
如果网页未完全加载,则无法呈现该网页.

当您将链接或src设置为< img>时,它将尝试异步加载图像.
因此,它需要等待加载完成.

请尝试以下代码.

page.onLoadFinished = function(status) {
    page.render('test.png');
    phantom.exit();
};
page.setContent(html,'http://github.com');

相关文章

vue阻止冒泡事件 阻止点击事件的执行 &lt;div @click=&a...
尝试过使用网友说的API接口获取 找到的都是失效了 暂时就使用...
后台我拿的数据是这样的格式: [ {id:1 , parentId: 0, name:...
JAVA下载文件防重复点击,防止多次下载请求,Cookie方式快速简...
Mip是什么意思以及作用有哪些