casperJs常用API

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/web_xiaolei/article/details/79742397

安装

  • phantomjs安装
    进入官网下载压缩包:http://phantomjs.org/download.html
    这里写图片描述
    解压到c盘并改名为phantomjs,并把路径加入到电脑环境变量里
  • casperjs安装
    进入官网下载压缩包:http://casperjs.org/
    这里写图片描述
    解压到c盘并改名为casperjs,并把路径加入到电脑环境变量里

创建一个casperjs实例

casperjs的执行脚本是由一个一个的step串联起来的,start表示第一步,然后后面的step用then来表示,依次执行:

var casper=require('casper').create({
    verbose: true,
    logLevel: error,
    viewportSize: {
        width: 1024,
        height: 768
    },
    pageSettings: { 
        loadImages: false       // 不加载图片
    }
});
casper.start('www.baidu.com', function(){
    this.echo("success!");
});
casper.run();

执行一个Casperjs文件

cd进入js脚本的路径位置

casperjs test.js

常用API

  • start()、then()、run():Casper的几个步骤
casper.start('www.baidu.com',function(){
//操作1
});
casper.then(function(){
//操作2
});
casper.then(function(){
//操作3
});
casper.run();
  • waitForSelector():等待网页DOM加载完成
casper.start('www.baidu.com',function(){
    this.waitForSelector('form[action="/search"]');
})
  • fill():填表
casper.start('https://www.baidu.com/',function(){
    this.fill('form#form',{
        'wd':'casperjs'
    });
});
  • evaluate():在当前页面环境下执行javascript语句
casper.then(function(){
    var rsv_pq = this.evaluate(function(){
        return $("input[name=rsv_pq]").val();
    })
    this.echo("rsv_pq: "+rsv_pq);
})
  • log():打印日志
casper.start('',function(){
    this.log('','error');
})
  • echo():打印到标准输出
casper.start('www.baidu.com', function(){
    this.echo('success!');
});
  • capture()、captureSelector():截图
casper.start('www.baidu.com', function() {
    this.capture('baidu1.png', {
        top: 100,
        left: 100,
        width: 800,
        height: 400
    });
    this.captureSelector('baidu2.png','#u1');
});
  • scrollTo()、scrollToBottom():页面滚动
casper.start('www.bilibili.com', function() {
    this.scrollTo(0, 1200);
});

注:这里只列出了几个常用到的,并不代表只有这么几个API!

猜你喜欢

转载自blog.csdn.net/web_xiaolei/article/details/79742397
今日推荐