[译文]casperjs使用说明-使用命令行

使用命令行

Casperjs使用内置的phantomjs命令行解析器,在cli模块里,它传递参数位置的命名选项

但是不要担心不能熟练操控CLI模块的API,一个casper实例已经包含了cli属性,允许你很容易的使用他的参数

让我们来看这个简单的casper脚本:

var casper = require("casper").create();

casper.echo("Casper CLI passed args:");

require("utils").dump(casper.cli.args);

casper.echo("Casper CLI passed options:");

require("utils").dump(casper.cli.options);

casper.exit();

注意:

请注意casper-pathcli这两个参数,他们在通过casperjs执行casperjs脚本时被python执行

执行结果:

$ casperjs test.js arg1 arg2 arg3 --foo=bar --plop anotherarg
Casper CLI passed args: [
    "arg1",
    "arg2",
    "arg3",
    "anotherarg"
]
Casper CLI passed options: {
    "casper-path": "/Users/niko/Sites/casperjs",
    "cli": true,
    "foo": "bar",
    "plop": true
}
获取,检查,删除参数:
var casper = require("casper").create();
casper.echo(casper.cli.has(0));
casper.echo(casper.cli.get(0));
casper.echo(casper.cli.has(3));
casper.echo(casper.cli.get(3));
casper.echo(casper.cli.has("foo"));
casper.echo(casper.cli.get("foo"));
casper.cli.drop("foo");
casper.echo(casper.cli.has("foo"));
casper.echo(casper.cli.get("foo"));
casper.exit();
执行结果:
$ casperjs test.js arg1 arg2 arg3 --foo=bar --plop anotherarg
true
arg1
true
anotherarg
true
bar
false
undefined
有益的建议:
如果你想检查有那些参数在你的脚本中被使用,看下面的:
 
casper.cli.drop("cli");
casper.cli.drop("casper-path");

if (casper.cli.args.length === 0 && Object.keys(casper.cli.options).length === 0) {
    casper.echo("No arg nor option passed").exit();
}
casper自有参数:
1.1版本新增:
casperjs命令有3个通用的参数:
--direct:把日志消息输出到控制台
--log-level=[debug|info|warning|error] 设置log等级
--engine=[phantomjs|slimerjs] 选择你想用的浏览器引擎,casperjs默认支持phantomjs支持的webkit,SlimerJS运行webkit内核
 
注意:
1.1版本已废弃
--direct参数已更名为--verbose。--direct尽管仍然可用,但是他被废弃是经过考虑的。
 
举例:
$ casperjs --verbose --log-level=debug myscript.js
 
最后但同样重要的是,你也能够使用所有的phantomjs 和cli命令行参数就像你运行其他的phantomjs脚本一样
$ casperjs --web-security=no --cookies-file=/tmp/mycookies.txt myscript.js
 
有益的建议:
想知道有那些phantomjs命令行参数可用,请运行phantomjs --help命令,SlimerJS支持的命令行参数几乎和phantomjs一致
 
原始参数值:
1.0版本新增
 
默认情况下,cli对象将把所有参数转换成他认为最合适的类型,比如这个例子:
 
var casper = require(‘casper‘).create();
var utils = require(‘utils‘);

utils.dump(casper.cli.get(‘foo‘));

casper.exit();
运行这个脚本:
$ casperjs c.js --foo=01234567
1234567
就像你看到的,01234567被转化为数字
有时候,你仅想得到原始的字符串,你可以使用cli对象的raw属性,他包含了这个参数的原始值
var casper = require(‘casper‘).create();
var utils = require(‘utils‘);

utils.dump(casper.cli.get(‘foo‘));
utils.dump(casper.cli.raw.get(‘foo‘));

casper.exit();
使用举例:
$ casperjs c.js --foo=01234567
1234567
"01234567"
 

[译文]casperjs使用说明-使用命令行

时间: 2024-12-29 07:21:46

[译文]casperjs使用说明-使用命令行的相关文章

[译文]casperjs使用说明-测试

capserjs自带了一个测试框架,它提供了一个使你能够更容易的测试你的web应用的工具集. 注意: 1.1版本变更 这个测试框架,包括它的所有API,仅能使用在casperjs test子命令下 如果你在测试框架的范围以外使用casper.test的属性,会报error 从1.1-beta3开始,你能够在测试环境下改写casper的初始化配置,想知道更多,可以去dedicated FAQ entry.了解 单元测试 设想Cow为我们想要测试的对象: function Cow() { this.

[译文]casperjs使用说明-选择器

casperjs的选择器可以在dom下工作,他既支持css也支持xpath. 下面所有的例子都基于这段html代码: <!doctype html> <html> <head> <meta charset="utf-8"> <title>My page</title> </head> <body> <h1 class="page-title">Hello<

jasypt命令行工具的使用说明

jasypt能够以很简单的方式为Java项目提供加密功能,这种简单的方式体现着它的命令行工具,与Spring,Hibernate, Springsecurity, wicket等第三方框架的集成. 本文参加jasypt官方网站:http://www.jasypt.org/  下载jasypt包,解压缩到本地目录. 如下图: 根目录: 命令行工具目录: 说明: 在lib目录下是jasypt的核心jar和与第三方组件集成的jar. 在bin目录下是jasypt的命令行工具脚本. 在apidoc目录下

Kettle命令行使用说明

1.Pan——转换执行器 用来执行转换.参数与Kitchen类似,如下. 1- -version显示版本信息 2- -file=filename运行xml文件 3- -param:key=value指定命名参数 4- -log=logging filename 设置日志文件 5-  -level=logging level  设置日志级别 Error:只显示错误 Nothing:不显示任何输出 Minimal:只使用最少的记录 Basic:这是默认的基本日志记录级别 Detailed:详细的日志

【ADB命令行】adb shell screenrecord命令行使用说明

一.查看帮助命令,参数 --help D:\>adb shell screenrecord --help Usage: screenrecord [options] <filename> Android screenrecord v1.2.  Records the device's display to a .mp4 file. Options: --size WIDTHxHEIGHT     Set the video size, e.g. "1280x720".

[译文]casperjs的API-clientutils模块

casper提供了少量的客户端接口用来进行远程DOM环境注入,通过clientutils模块的ClientUtils类实例中的__utils__对象来执行: casper.evaluate(function() { __utils__.echo("Hello World!"); }); 提示: 这个工具不需要使用jQuery, Mootools等第三方库,但是不影响你通过Casper.options.clientScripts来使用这些第三方库   Bookmarklet(标签页) 一

Nmap for windows 下命令行使用

从事IT方面的工作,无论是开发或运维,当测试某些系统服务端口时,总会遇到TCP或 UDP 两种协议.众所周知,TCP 服务端口,可以通过telnet 进行远程测试,而UDP 端口,一般来说都会使用Nmap,无论是在linux 还是 windows环境下. 在windows 下的Nmap软件有图形界面也有命令行模式,但大多数人使用熟练的人,更偏向于命令行模式,因为操作简便而快速. 下载地址: https://nmap.org/download.html 在windows上安装完毕后,直接运行打开图

显示器 Linux 性能 18 (一个命令行工具传递)

对于系统和网络管理员来说每天监控和调试Linux系统的性能问题是一项繁重的工作.在IT领域作为一名Linux系统的管理员工作5年后,我逐渐认识到监控和保持系统启动并执行是多么的不easy.基于此原因.我们已编写了最常使用的18个命令行工具列表,这些工具将有助于每一个Linux/Unix 系统管理员的工作.这些命令行工具能够在各种Linux系统下使用.能够用于监控和查找产生性能问题的解决办法.这个命令行工具列表提供了足够的工具.您能够挑选适用于您的监控场景的工具. 1.Top-Linux进程监控

监控 Linux 性能的 18 个命令行工具(转)

对于系统和网络管理员来说每天监控和调试Linux系统的性能问题是一项繁重的工作.在IT领域作为一名Linux系统的管理员工作5年后,我逐渐认识到监控和保持系统启动并运行是多么的不容易.基于此原因,我们已编写了最常使用的18个命令行工具列表,这些工具将有助于每个Linux/Unix 系统管理员的工作.这些命令行工具可以在各种Linux系统下使用,可以用于监控和查找产生性能问题的原因.这个命令行工具列表提供了足够的工具,您可以挑选适用于您的监控场景的工具. 1.Top-Linux进程监控 Linux