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

yipeiwu_com6年前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设计】。

相关文章

python单例模式原理与创建方法实例分析

本文实例讲述了python单例模式原理与创建方法。分享给大家供大家参考,具体如下: 1. 单例是什么 举个常见的单例模式例子,我们日常使用的电脑上都有一个回收站,在整个操作系统中,回收站...

高质量Python代码编写的5个优化技巧

如今我使用 Python 已经很长时间了,但当我回顾之前写的一些代码时,有时候会感到很沮丧。例如,最早使用 Python 时,我写了一个名为 Sudoku 的游戏(GitHub地址:ht...

python将四元数变换为旋转矩阵的实例

如下所示: import numpy as np from autolab_core import RigidTransform # 写上用四元数表示的orientation和xy...

在类Unix系统上开始Python3编程入门

假设有个python脚本script.py,不管哪种Unix平台,都可以在命令行上通过解释器执行: $ python script.py Unix平台还可以在不明确指定pyth...

用sqlalchemy构建Django连接池的实例

都知道django每次请求都会连接数据库和释放数据库连接。Django为每个请求使用新的数据库连接。一开始这个方法行得通。然而随着服务器上的负载的增加,创建/销毁连接数据库开始花大量的时...