windows下面安装casperjs

因为需要 就学习了一下casperjs,CasperJS是一个开源的导航脚本处理和测试工具,基于PhantomJS(前端自动化测试工具)编写。由于casperjs对PhantomJS的依赖性,所以需要安装PhantomJS。

PhantomJS最好下载最新的版本,由于网上版本较多,所以我就找到了较新的版本提供下载,是2.0.0版本的。可以在csdn上找到相应的下载资源。

PhantomJS安装完成后,需要将PhantomJS的安装路径写入到Windows的环境变量中去。过程这里就不再细讲了。

casperjs的安装:

我使用的是casperjs的1.1版本,兼容性较好。

将casperjs安装路径加到环境变量PATH中,例如“C:\casperjs\bin"

这样我们就可以使用casperjs了。

使用的简单过程为:

使用控制台命令窗口进入到你casperjs的安装路径中去(bin文件夹中),然后再调用相应的js文件。

举例说明一下:

打开CMD 进入到你casperjs的安装路径中去,(还可以通过先打开你casperjs的安装路径
然后按住shift键右击 选择在此处打开命令窗口),使用调用语句

casperjs myscript.js

完成casperjs的使用。

可能在使用的过程中你会遇到PhantomJS和casperjs不兼容的情况,比如说 CasperJS
needs PhantomJS v1.× 的错误,


casperjs不支持phantomjs 2.x 版本解决方案

遇到的问题如题:

首先,安装完成后,直接运行报错如下:

1
CasperJS needs PhantomJS v1.x

解决方式,去掉casperjs的版本限制代码,代码所在目录casperjs\bin\bootstrap.js,要去掉的代码,当然你也可以替换成下:

1
2
3
4
5
6
7
8
9
10
11
12
//需删除或替换的代码块
( function (version) {
     // required version check
     if (version.major !== 1) {
         return __die( 'CasperJS needs PhantomJS v1.x' );
     } if (version.minor < 8) {
         return __die( 'CasperJS needs at least PhantomJS v1.8 or later.' );
     }
     if (version.minor === 8 && version.patch < 1) {
         return __die( 'CasperJS needs at least PhantomJS v1.8.1 or later.' );
     }
})(phantom.version);

若是替换,可用下面代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
( function (version) {
        // required version check
        if (version.major === 1) {
            if (version.minor < 8) {
                return __die( 'CasperJS needs at least PhantomJS v1.8 or later.' );
            }
            if (version.minor === 8 && version.patch < 1) {
                return __die( 'CasperJS needs at least PhantomJS v1.8.1 or later.' );
            }
        } else if (version.major === 2) {
            console.log( "Warning PhantomJS v2.0 not yet released. There will not be any official support for any bugs until stable version is released!" );
        }
        else return __die( 'CasperJS needs PhantomJS v1.x or v2.x' );
    })(phantom.version);

操作完成后,再次运行发现又出了如下错误:

1
Couldn't find nor compute phantom.casperPath, exiting.

还是需要修改上面的casperjs\bin\bootstrap.js文件,在文件上方加上如下代码:

1
2
3
4
var system = require( 'system' );
var argsdeprecated = system.args;
argsdeprecated.shift();
phantom.args = argsdeprecated;

至此,可以正常运行了!

参考文章:

http://stackoverflow.com/questions/28656768/issues-running-casperjs-with-phantomjs2-0-0-on-mac-yosemite

https://github.com/n1k0/casperjs/issues/1150

转载于:https://www.cnblogs.com/mmbbflyer/p/5881478.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值