phantomjs模拟登陆

最近在作一些公司其余部门系统的后台模拟操做,但因为那边的系统最开始是外包给其余公司开发的,如今那边的开发也不知道有些post的参数是如何生成的。因而想考察下是否是能够把phantomjs这个工具给加进来避开后台的模拟操做。web

作了个oschina模拟登陆的例子,找到了phantomjs的api,直接开干就好了。(在这里省略了一个步骤,就是cookie值不是js打印的,而是我直接手动登陆后提取的)api

脚本以下:cookie

var page = require('webpage').create(),
  system = require('system'),
  address;
phantom.addCookie({
  'name'     : 'Cookie',   /* required property */
  'value'    : '_reg_key_=Kg8nuWPyQFYx2IvpAIGY; oscid=2Br68t5ibgWxWhlyAo8prm7ObzjWdX6JrMNzpg7UIb7dssJPFnC5bw0ELoIA9aEqGCtLQZk',
  'size'     :142
});

if (system.args.length === 1) {
  phantom.exit(1);
} else {
  address = system.args[1];
  page.open(address, function (status) {
    console.log(page.content);
    phantom.exit();
  });
}

验证一下脚本:工具

sh-3.2# phantomjs test.js http://my.oschina.net/rasine/blog/333056

打印的内容显示登陆成功。post