记录千库网的一次自动登录

记录千库网的一次自动登录

月光魔力鸭

2018-09-12 10:24 阅读 1264 喜欢 0 自动登录 千库网

写文章总会需要一些素材,但是好多素材都是收费或有限制的,还是我要求不高,在千库网看了下还不错,有各签到还送VIP,于是就有了想法....

想到就干,由于之前有过经验,所以选用的还是: phantomjs + casperjs

先分析下步骤:

所以难点就在登录上,根据分析找到千库网的QQ登录地址: http://588ku.com/index.php?m=login&a=snsLogin&type=qq&source= 只需要访问这个地址,然后点击登录,再页面中再次访问千库网首页就可以发现已经登录上了。

代码如下:

phantom.outputEncoding = 'utf8';

var url = 'http://588ku.com/';

var casper = require('casper').create({
    verbose: true,
    logLevel: "debug",
    pageSettings: {
         loadImages:  true,        
         loadPlugins: true,    
         userAgent: 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2729.4 Safari/537.36'
    }
});

var user = casper.cli.args[0],
    pwd = casper.cli.args[1];

casper.start().thenOpen('http://588ku.com/index.php?m=login&a=snsLogin&type=qq&source=',function(){});
casper.withFrame(0,function(){
    this.capture('1.png');
    this.echo('登录中...')
    this.click('#switcher_plogin');//切换
    this.wait(15000);
});
casper.withFrame(0,function(){
    this.capture('2.png');
    this.fillSelectors('form#loginform',{
        '#u' : user,
        '#p' : pwd
    });
    this.wait(15000);
});
casper.withFrame(0,function(){
    this.capture('3.png');
    this.click('form#loginform input[type="submit"]');
    this.wait(1000);
    this.capture('4.png');
    this.wait(15000);
});
casper.thenOpen(url,function(){
    this.echo('进入'+url);
    this.wait(15000);
    this.capture('5.png');
    this.waitForSelector('.already-sign-but');
});

casper.then(function(){
    this.echo('点击签到');
    this.click('a.already-sign-but');
    this.wait(12000);
});
casper.then(function(){
    if(this.exists('.signIn-btn')){
        this.echo('还未签到,正在签到中...')
    }
});
casper.then(function(){
    this.click('.signIn-btn');
    this.wait(11000);
});
casper.then(function(){
    this.capture('res.png');
    this.echo('签到结束,查看 res.png 图片');
});
casper.then(function(){
    this.exit();//退出
})

casper.run();

在来一张截图:

image.png

转载请注明出处: https://chrunlee.cn/article/auto-login-qianku.html


感谢支持!

赞赏支持
提交评论
评论信息 (请文明评论)
暂无评论,快来快来写想法...
推荐
之前在知乎上有看到,基本上都是一致的,这里提供一个nodejs版本的针对微信内dat文件进行处理恢复为图片的方法。
想做微信/支付宝支付很久了..奈何需要的资质太多,只能慢慢申请,等待,审核..终于下来了。
使用nodejs连接ftp,进行ftp的操作,包括列表、上传、下载以及速率等。
最近又回归了下DNF ,玩了一段时间,感觉也挺没意思的,关键是平时更没意思,想着不行搞个自动刷图吧(先说结论,没成)
产品版本更新的时候经常会有一些数据库的差异,如果版本管理好的话,一步一步升级即可.. 但是如果好久没更新的话,还是有很多不确定的,只能挨着比对表和字段。比对了一次就烦了,写了这么一个工具,查询差异表和字段并给出sql语句。
今天想在服务器上跑下自己自动签到的程序,需要安装puppeteer ,结果出错。 permission denied, mkdir '/root/.nvm/versions/node/v9.11.1/lib/node_modules/
关于js的编译和压缩,之前做过一个小工具了,主要就是自己项目成员大都没有这部分的技能,导致发布的时候总需要去编译压缩下.. 最终做了个命令行小工具.. 问题不在这里,前一阵子做压缩的时候发现压缩后竟然是undefined.最终才发现是es6的语法问题。
在日常开发中,经常会频繁的做一些重复性的操作,作为一名程序员,解放双手的时刻到了