青龙面板搭配js脚本实现自动签到功能
一、前因
在我看来,APP的各种签到、各种活动、各种喂啊、养啊、种啊的,无非都是代码驱动着,与其用手去点去喂,不如“以码攻码”。
自然,我也只是纸上谈兵罢了,自动签到这玩意,原理虽不难,但要真实践起来还是需要费些时间的。
巧就巧在,浩瀚世间,总有人有兴趣有时间去编写去贡献他们热爱的东西,而这东西你刚好需要。
在表达了respect之后,嫖着用就行。
上次下单了一辆单车,发现京豆可以抵现,那就先找一个jd自动签到地脚本玩玩吧!
二、安装青龙
懒得去用cron跟node执行脚本了,找了个可视化工具执行。
用的青龙面板,地址为:https://github.com/whyour/qinglong ,老规矩,docker安装。
你可以跟着它的文档来,鉴于有人的网络一定会卡在wget步骤中,请往下看。
新建目录与docker-compose.yml文件,甩入下面代码:
version: '2'
services:
web:
image: whyour/qinglong
container_name: qinglong
volumes:
- ./data/config:/ql/config
- ./data/log:/ql/log
- ./data/db:/ql/db
- ./data/scripts:/ql/scripts
- ./data/repo:/ql/repo
- ./data/raw:/ql/raw
ports:
- "0.0.0.0:5700:5700"
restart: unless-stopped
docker-compose up -d
运行,输入IP+5700访问页面。
通知这里选择最简单的server酱,打开网页 https://sct.ftqq.com/ 扫码登录就会拿到sendkey。
设置账户登录之后就来到了主界面。
三、脚本拉取
用的这里的脚本:https://github.com/shufflewzc/faker2 ,新建定时任务
脚本命令:
ql repo https://ghproxy.com/https://github.com/shufflewzc/faker2.git "jd_|jx_|gua_|jddj_|getJDCookie" "activity|backUp" "^jd[^_]|USER|function|utils|sendNotify|ZooFaker_Necklace.js|JDJRValidator_|sign_graphics_validate|ql|JDSignValidator"
定时规则:每天0点2分执行。
2 0 * * *
第一次手动运行下。
点击旁边的日志可以看到拉取列表,还真是多啊。刷新页面就能看到列表了。
四、获取cookie
有了脚本,你不给它账号,它也不知道如何运行。
F12打开开发者工具,选择手机模式,用手机号登录(扫码容易过期),登录之后找到cookie,复制保存下来。
格式如下:
pt_token=xxxx;pt_pin=xxxx;
五、使用
回到青龙,新建变量,贴入你的cookie值。
找个脚本运行下,查看日志,没有报错就成功了。
PS:跟着日志来就行。
六、总结
试了几下,cookie过期太快了,或者根本没效果,无妨,重点不在签到,了解到了青龙面板还有server酱这些工具也算有收获,server酱作者好像还开源了PushDeer,改明玩一玩。
收工。