搭建自动签到服务

使用前准备

1.服务器
2.QianDao for Python3
github地址:https://github.com/qiandao-today/qiandao

安装

docker

1.安装docker

可在宝塔应用商店安装 docker管理器 ,或者参考 https://docs.docker.com 进行安装

2.创建容器

$(pwd)为当前目录,可以根据自己的需求进行替换
docker run -d --name qiandao -p 8923:80 -v $(pwd)/qiandao/config:/usr/src/app/config a76yyyy/qiandao

3.访问你的IP:8923

可看到以下界面

右上角点击登录

注:注册的第一个账号即为管理账号
可看到以下界面

完成!

更详细的安装方法以及更多详细介绍请到作者的github上查看

创建模版

可以看这个大佬视频,讲解较为完整,视频地址:https://www.bilibili.com/video/BV1ox411C7RT
可以考虑使用公共模板,这样较方便
创建签到任务前,首先要编写模版
这里简单说下如何保存HAR,还有建立模版的过程
需要准备2个帐号,一个现代的浏览器(Chrome, Edge, Firefox etc..)

打开网站,按F12打开控制台,切换到Network选项卡
勾上Preserve Log,以防止页面刷新或跳转后,所有Request被清空
点击Clear按钮,把之前打开的无用的Request清空下

点击签到按钮后,后会多出几个请求log
右键第一个Request,选择Save all as HAR with content保存HAR文件

回到你的签到站,新建模版,上传HAR文件,用户名和密码不需要填写
点击你的请求,接下来我们要做一些修改

把你自己的Cookies删除,Request Headers中的Cookie对应值改成变量{{cookie}},并且打勾
可以把浏览器自带的一些没用的Request Headers清除,改好的如下图

想可以在测试选项卡添加变量,填写自己的cookie后,点击测试
可以观察下的html源码.成功的话,获取的铜币也在html元素里
为方便我们查看日志,我们用正则提取出来,比如这样
coin <b style="color:red;">(\d+)<
day <b style="color:green;">(\d+)<

这样签到的天数和铜币数量就保存在变量day和coin中了.点击保存一次
接着我们继续插入一个unicode转换, 点击保存

在Query String Parameters的content填写需要转换内容祈祷得到 {{coin}} 铜币,已经累计祈祷 {{day}} 天了

在预览页面,变量提取的name改成__log__,正则保持默认的"转换后": "(.*)"即可

保存后,可以在我的模版里发布成公开模版,然后在我的发布页面里审核通过

以下请求一般是必要的:
登录页面
登录页面的POST
发出用户名、密码的请求
发送后导致页面跳转的页面
翻页前后的第一个页面

使用

新建一个签到任务,填上自己的Cookie即可
如果装了GetCookie的浏览器插件,可以直接点击获取

获取cookie的方法

方法一

打开需要获取cookie的网站
浏览器F12打开控制台
进入Console(控制台)页面
输入document.cookie

输入后的内容即为cookie

方法二

在Network(网络)选项卡里面打开任意请求,找到Request Headers,把Cookie内容复制出来

拓展

反向代理

1.在宝塔中创建并绑定好域名,点击设置

2.点击反向代理

3.点击添加反向代理

4.配置好,如下图,点击提交

5.点击配置文件


加入以下内容:

location / {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_redirect off;
     proxy_pass http://127.0.0.1:8923;
}

6.完成

Chrome的控制台改成中文

一个好消息,新版Chrome的控制台不久前已支持中文
可在控制台右上角设置中设置语言,如下图

posted @ 2021-12-31 18:19  凯哥xyz  阅读(1922)  评论(0编辑  收藏  举报