QD ~ 不仅限于自动签到的定时任务自动执行框架
介绍:
QD,一个定时任务自动执行框架,可以帮助进行自动签到,自动评论,自动抽奖,自动领取礼品,只有你想不到,没有它做不到(甚至能通过抓框架对应ip的ck和ua,来过网站开启的CF五秒盾)
环境需求:
服务器IP没有被希望部署自动执行任务的网址进行封禁
例:国内VPS的Ip基本都被吾爱破解进行封禁,故无法进行对吾爱破解的自动签到
部署方法一:使用Docker安装
第一步:更新源
Ubuntu/Debian:
apt update -y && apt upgrade -y
Centos:
yum update -y && yum upgrade -y
第二步:安装Docker
curl -fsSL https://get.docker.com -o get-docker.sh && sh ./get-docker.sh
第三步:运行QD容器
docker run -d --name qd -p 8923:80 -v $(pwd)/qd/config:/usr/src/app/config qdtoday/qd
容器内部无法连通外部网络时尝试该命令:
使用 Host 网络模式创建容器, 端口号: 8923
docker run -d --name qd --env PORT=8923 --net=host -v $(pwd)/qd/config:/usr/src/app/config qdtoday/qd
注意: 使用该命令创建容器后, 请将模板里 http://localhost/ 形式的 api 请求, 手动改成 api:// 或 http://localhost:8923/ 后, 才能正常完成相关API请求。
第四步:设置管理员
首位注册用户默认为管理员, 需要先登出再登陆后才能获得完整管理员权限
如果想要设置更多管理员的话,请按照如下指令操作:
进入Docker容器:
docker exec -it qd /bin/bash
设置管理员[修改邮箱为设置管理员的邮箱]:
python ./chrole.py your@email.address admin
部署完成后可以访问
http://<your-ip>:8923
来访问QD框架了部署方法二:从源代码安装
环境要求:Python Version >= 3.9
第一步:更新源
Ubuntu/Debian:
apt update -y && apt upgrade -y
Centos:
yum update -y && yum upgrade -y
第二步:克隆仓库
git clone https://github.com/qd-today/qd.git
第三步:安装依赖
pip3 install -r requirements.txt
第四步:复制并修改配置文件
cp config.py local_config.py
vi local_config.py
第五步:启动程序
python ./run.py
注意:请手动将模板中 http://localhost/ 形式的 api 请求改为 api:// 或 http://localhost:8923/ ,以便正确完成相关API 请求。
模板需要发布才会在「公开模板」中展示, 需要管理员权限才能在「我的发布请求」中审批通过。
第六步:设置管理员
首位注册用户默认为管理员, 需要先登出再登陆后才能获得完整管理员权限
如果想要设置更多管理员的话,请使用如下指令[修改邮箱为设置管理员的邮箱]:
python ./chrole.py your@email.address admin
部署完成后可以访问 http://<your-ip>:8923
来访问QD框架了
配置自动执行:
第一步:添加公共模板(可选):
公共模版,是别人已经配置好的模版,拿来即用,很方便,只需要在变量中填入自己的Cookie,账户密码之类的。
官方已经在文件中提供的公共模版为:https://github.com/qd-today/templates
还可以添加由 wjf0214 进行维护的公众模版:https://github.com/wjf0214/qd-templates
第二步:通过抓包来获取 HAR
- 在浏览器中按 F12 、 Ctrl + Shift + I ,或从 Chrome 菜单中选择 更多工具 > 开发者工具 。
- 从屏幕底部或右侧打开的面板中,选择 网络 选项卡。
- 确保 网络 选项卡左上角的 录制 按钮显示为 红色。
- 如果它是灰色的,单击一下开始录制。
选中 保留日志 。
- 单击 清除 按钮以清除 网络 选项卡中的所有现有日志。
- 尝试重现计划发起的 HTTP 请求。
- 重现任务后,右键单击网络请求网格上的任意位置。
- 选择 另存为带内容的 HAR。
- 将文件保存到您的计算机。
第三步:上传 HAR 文件
- 点击 我的模板 右侧的 + 按钮。
- 上传刚刚保存的 HAR 文件。
第四步:编辑模板
- 将用户名、密码、cookie、header 等根据用户变化的部分替换成类似 {{ username }} 的模板。(模板支持 jinja2 语法)
- 在请求编辑中使用测试面板测试模板是否正确返回,使用正确和错误的用户名进行测试。
3. 填写 成功/失败断言,这有助于检测模板任务是否运行失败。
4. 当请求中需要上一次请求的一些数据时,使用变量抽取,通过正则化抽取数据,保存在环境变量中。使用组选择器 `ab(\w+)cd` 选择其中的一部分。
5. 使用 `__log__` 提取任务日志。
6. 当所有请求编辑完成后,使用下载按钮旁边的 测试 来测试整体。
7. 正在编辑的模板会自动保存在浏览器缓存中,不用担心丢失。
8. 单击 保存/下载 按钮保存/下载模板。
第五步:创建定时任务
- 点击 我的任务 右侧的 + 按钮。
- 选择刚刚创建的模板。
- 填写任务变量,任务间隔、任务组和任务执行时间。
- 单击 测试 按钮测试任务。
- 单击保存按钮保存任务。
相关地址:
官方地址:https://github.com/qd-today/qd
默认公开模版:https://github.com/qd-today/templates
wjf0214维护模版:https://github.com/wjf0214/qd-templates
原文链接:https://blog.fuyiran.link/Technology/20.html
版权声明:本博客所有文章除特別声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 傅说 (blog.fuyiran.link)