作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我无法在命令提示符中读取调试问题。我可以将其发送到 PhantomJS 或 CasperJS 脚本中的文本文件吗?
这是我的Python代码;
import os
import subprocess
#proxies = {'https': 'http://wmhproxy2:8080'}
APP_ROOT = os.path.dirname(os.path.realpath(__file__))
CASPER = "C:/casperjs/bin/casperjs"
#SCRIPT = os.path.join(APP_ROOT,'unicorn.js')
SCRIPT = os.path.join(APP_ROOT,'unicorn.js')
params = CASPER +' '+ SCRIPT
paper = subprocess.check_output(params,shell=True)
rock = paper.text
salesforce = open('S:/N/salesforce2.txt','w')
salesforce.write(write)
print(subprocess.check_output(params,shell=True))
CasperJS 脚本:
var casper = require('casper').create({
verbose: true,
logLevel: "debug"
});
var x = require('casper').selectXPath;
casper.options.waitTimeout = 7000;
casper.start('http://www.click2houston.com/',function(){
this.echo(this.getTitle());
}).viewport(1200,1000);
casper.run();
最佳答案
是的,您可以将日志附加到 CasperJS 脚本中的文件中。
CasperJS 有一个内部事件管理,它公开 log
event 。一个简单的对象被传递到事件处理程序中,其中还包含日志消息。如果您想要不同的日志格式,那么您需要自己动手或实现 part of the log code在您的事件处理程序中。
var fs = require("fs");
fs.write("mylogfile.log", "", "w"); // overwrite log file
casper.on("log", function(entry){
fs.write("mylogfile.log", entry.message + "\n", "a");
});
CasperJS是建立在PhantomJS之上的,所以你可以直接使用PhantomJS' file system module 。当然你也可以将日志文件作为命令行选项传递到脚本中,并通过casper.cli
将其取出。 .
关于javascript - 如何将CasperJS调试结果打印到文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30334821/
我是一名优秀的程序员,十分优秀!