解决phantomjs截图失败,phantom.exit位置的问题

yipeiwu_com5年前Python基础

刚刚学习使用phantomjs,根据网上帖子自己手动改了一个延时截图功能,发现延时功能就是不能执行,最后一点点排查出了问题。

看代码:

var page = require('webpage').create(), 
 system = require('system'), 
 address,file; 
 
if (system.args.length === 1) { 
 console.log('Usage: netlog.js <some URL>'); 
 phantom.exit(1); 
} else { 
 address = system.args[1]; 
 file = system.args[2]; 
 
 page.open(address, function (status) { 
  if (status == 'success') { 
   console.log('success file is ' + file); 
  } 
  window.setTimeout(function () 
   { 
   console.log('render ok'); 
   page.render(file); 
   phantom.exit();//<span style="color:#ff0000;">必须在settimeout里面调用结束语句</span> 
   },60*1000); 
   
 }); 
} 

手动改的代码setTimeout里没有写phantom.exit(),而是放在setTimeout外面了,怎么都不能执行setTimeout里面的语句,放进去就ok了。。。

以上这篇解决phantomjs截图失败,phantom.exit位置的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

浅谈django三种缓存模式的使用及注意点

浅谈django三种缓存模式的使用及注意点

django是动态网页,一般来说需要实时的生成访问的页面,展示给访问者,这样,内容可以随时变化,也就说请求到达视图函数之后,然后进行模板渲染,将字符串返回给用户,用户会看到相应的html...

Python脚本实现代码行数统计代码分享

Python脚本实现代码行数统计代码分享

之前用bash实现过(/post/61943.htm),不过那个不能在windows下使用,所以就写了个python版,也方便我以后使用……这里就不多介绍了,不懂的google下。 实现...

TensorFlow如何实现反向传播

使用TensorFlow的一个优势是,它可以维护操作状态和基于反向传播自动地更新模型变量。 TensorFlow通过计算图来更新变量和最小化损失函数来反向传播误差的。这步将通过声明优化...

python实现PID算法及测试的例子

python实现PID算法及测试的例子

PID算法实现 import time class PID: def __init__(self, P=0.2, I=0.0, D=0.0): self.Kp = P...

Python学习笔记之函数的定义和作用域实例详解

本文实例讲述了Python函数的定义和作用域。分享给大家供大家参考,具体如下: 定义函数 默认参数: 可以向函数中添加默认参数,以便为在函数调用中未指定的参数提供默认值 # 如果调用...