因为需要 就学习了一下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

windows下面安装casperjs的更多相关文章

  1. [Python爬虫] 在Windows下安装PhantomJS和CasperJS及入门介绍(上)

    最近在使用Python爬取网页内容时,总是遇到JS临时加载.动态获取网页信息的困难.例如爬取CSDN下载资源评论.搜狐图片中的“原图”等,此时尝试学习Phantomjs和CasperJS来解决这个问题 ...

  2. 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一)

    相关连接导航 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一) 执行 $Gulp 时发生了什么 —— 基于 Gulp 的前端集成解决方案(二) 常用 Gulp 插件汇总 ...

  3. 在Windows上安装Elasticsearch 5.0

    在windows上安装Elasticsearch Elasticsearch可以使用.zip软件包安装在Windows上. elasticsearch-service.bat命令,它将设置Elasti ...

  4. Windows 下安装 MongoDB

    Windows 下安装 MongoDB 的步骤:1.官网www.mongodb.com下载安装包或zip包2.解压下载的文件到文件夹 D:\mongo .3.使用管理员权限打开CMD,导航到目录 D: ...

  5. 在 Windows 上安装Rabbit MQ 指南

    rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统.他遵循Mozilla Public License开源协议.采用 Erlang 实现的工业级的消息队列(MQ)服务器. Ra ...

  6. windows下 安装Kali Linux到 U盘的方法

    作者:玄魂工作室 \ 2016年10月20日 把Kali Linux安装到U盘好处很多,可以从U盘启动使用整个电脑的硬件资源, 可以随身携带,减少对自己电脑的影响. 今天要给大家讲的是如何在windo ...

  7. Windows无法安装到这个磁盘。请确保在计算机的BIOS菜单中启用了磁盘控制器

    今天一朋友问我这个问题,呃,以前我也遇到过,但忘记记录了,这次就记录一下吧,就懒得打字了,图片里面很清楚了 不说点什么的话是不是太水了O(∩_∩)O~,好吧扩充一下: Windows无法安装到这个磁盘 ...

  8. Coreseek Windows下安装调试

    由于项目需要全文检索,后面就去网上查了下资料,找到了Sphinx[中文是狮身人面像]这个全文检索引擎,听说挺好用的,不过没有中文分词.后面又去找了一下,找到了Coreseek,一款中文全文检索/搜索软 ...

  9. 从零开始学 Java - Windows 下安装 Tomcat

    谁都想分一杯羹 没有一个人是真正的无私到伟大的,我们试着说着做自己,与人为善,世界和平!殊不知,他们的真实目的当你知道后,你会被恶心到直摇头并下意识地迅速跑开,下辈子都不想见到他.不过,他没错,你也没 ...

随机推荐

  1. MVC 区域功能

    因为MVC项目是要求都放在固定的文件夹,所以,当项目大的时候,会很不方便管理,所以微软引入的区域的功能 使用方法: 在项目上右击--添加--区域 就会出现Areas的文件夹,里面就是子MVC 渲染: ...

  2. iOS,html使用交互相关

    1.UIWebView加载Html文件 2.UIWebView的委托方法 3.UIWebView和JS交互 4.使用Safari,WebView调试html 5.使用WKWebView加载Html,和 ...

  3. find常用参数详解

    find常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在linux系统中,在init 3模式情况下都是命令行模式,这个时候我们想要找到一个文件的就得依赖一个非常好用的 ...

  4. 同事的游戏项目--Robocode-学习链接

    Robocode机器人库学习链接:http://www.pudn.com/search_db.asp?keyword=Robocode 官网 :http://robocode.sourceforge. ...

  5. 更新数据前jquery如何填充数据到表单域中

    $("#p_city option[value='${project.city}']").attr("selected","selected" ...

  6. AJAX-----02远古时期的ajax

    其实也可以利用创建元素然后用添加属性的方法进行请求后端的

  7. struts 数据验证

    1. validate()验证 将对页面表单验证的内容写到validate()方法中,实现验证和业务处理内容的分离 在Action中添加 validate()方法   public void vali ...

  8. WEB三层架构与MVC

    web三层架构是指: >用户接口层(UI Layer) >业务逻辑层(Bussiness Layer) >持久化层 关于业务逻辑和用户接口 在早期的web开发中,因为业务比较简单,并 ...

  9. apache svn subversion安装和配置(使用源码安装包方式)

    环境:虚拟机下centos7 1.下载安装包:http://subversion.apache.org/download.cgi 2.上传到指定文件夹并解压 3.安装依赖包 apr apr-utils ...

  10. 2016年上半年金融类App成绩单,手机银行优势尽显! (转自Analysys易观(ID:enfodesk))

    2016已悄然时过大半,金融各领域经过了开年大战,二季度末尾的6月更是几家欢喜几家愁,其中频繁出现的黑马更是足够让人惊喜.我们基于易观千帆6月移动应用大数据,筛选了百款金融类App为您揭晓TOP100 ...