【开源】创建自动签到系统—QD框架
1. 介绍
QD是一个 基于 HAR 编辑器和 Tornado 服务端的 HTTP 定时任务自动执行 Web 框架。
主要通过抓包获取到HAR来制作任务模板,从而实现异步响应和发起HTTP请求
2. 需要环境
2.1 硬件需求
CPU:至少1核
内存:推荐 ≥ 1G
硬盘:推荐 ≥ 2G
2.2 软件需求
需要Linux系统,Docker、Docker-Compose,环境安装见《必备的Docker和Dockercompose环境安装》,本安装环境均基于Debian11。
3.部署
3.1 Docker-Compose方式安装
复制上述配置文件内容,shift+ins 粘贴文本后,输入 :wq 退出保存
3.2 Docker安装
容器内部无法连通外部网络时尝试该命令
注意: 使用该命令创建容器后, 请将模板里 http://localhost/ 形式的 api 请求, 手动改成 api:// 或 http://localhost:8923/ 后, 才能正常完成相关API请求。
请勿同时运行新旧版 QD 框架, 或将不同运行中的 QD 容器数据库映射为同一文件。
这里还是推荐采用Docker-Compose方式安装。
4.使用说明
4.1 获取HAR
HAR(HTTP 归档) 是多种 HTTP 会话工具用来导出所记录数据的 一种文件格式。 这种格式基本上是 JSON 对象,并具有一组特定的字段。
HAR 文件包含敏感数据。录制过程中所下载网页中的内容。录制过程中的所有信息: cookie、个人详细信息、密码、信用卡号码等。
注意:并非所有 HAR 格式的字段都是必填字段, 很多时候,部分信息不会保存到文件中。
谷歌HAR分析工具 https://toolbox.googleapps.com/apps/har_analyzer/?lang=zh_CN
第三方HAR分析工具 http://www.softwareishard.com/har/viewer/
4.2 抓包
4.2.1. Chrome 或 Edge
- 按 F12 、 Ctrl + Shift + I ,或从 Chrome 菜单中选择 更多工具 > 开发者工具 。
- 从屏幕底部或右侧打开的面板中,选择 网络 选项卡。确保 网络 选项卡左上角的 录制 按钮显示为 红色。选中 保留日志 旁边的框。

- 单击 清除 按钮以清除 网络 选项卡中的所有现有日志。现在尝试重现您计划发起的 HTTP 请求。
重现任务后,右键单击网络请求网格上的任意位置。选择 另存为带内容的 HAR。

4.2.2 Windows - Fiddler
1.打开 Fiddler,打开 Tools 菜单,选择 Options。
2.选择 HTTPS 选项卡 ,勾选 Capture HTTPS Connects 。
3.选择 连接 选项卡,选中 解密 HTTPS 流量 。
4.现在尝试重现您计划发起的 HTTP 请求。
5.导出为 HAR 格式 - 请选择 HTTPArchive 作为导出方式。
4.3 公共模板
- 点击 我的模板 右侧的 社区模板 按钮。
- 更新存储库以获取最新的 HAR 文件列表。
- 选择你要使用的HAR文件,点击 Subscribe 按钮订阅模板。
- 根据需要修改模板。
- 然后跳到 3.编辑模板 继续编辑。
5. 上传HAR文件
点击 我的模板 右侧的 + 按钮 → 上传刚刚保存的 HAR 文件 → 点击 上传 继续。
6. 编辑模板
将用户名、密码、cookie、header 等根据用户变化的部分替换成类似 {{ username }} 的模板。(模板支持 jinja2 语法)
在请求编辑中使用测试面板测试模板是否正确返回,使用正确和错误的用户名进行测试。
填写 成功/失败断言,这有助于检测模板任务是否运行失败。
当请求中需要上一次请求的一些数据时,使用变量抽取,通过正则化抽取数据,保存在环境变量中。使用组选择器 ab(\w+)cd 选择其中的一部分。
使用 log 提取任务日志。
当所有请求编辑完成后,使用下载按钮旁边的 测试 来测试整体。
正在编辑的模板会自动保存在浏览器缓存中,不用担心丢失。
单击 保存 按钮保存模板。
单击 下载 按钮下载模板。
创建定时任务
点击 我的任务 右侧的 + 按钮 → 选择刚刚创建的模板 → 填写任务变量,任务间隔、任务组和任务执行时间 → 单击 测试 按钮测试任务 → 单击保存按钮保存任务。
批量修改
在左上角我的任务下方有一排设置栏可以批量修改多个任务的启用、禁用、定时、删除。
相关文章:
【开源】创建自动签到系统—QD框架
1. 介绍 QD是一个 基于 HAR 编辑器和 Tornado 服务端的 HTTP 定时任务自动执行 Web 框架。 主要通过抓包获取到HAR来制作任务模板,从而实现异步响应和发起HTTP请求 2. 需要环境 2.1 硬件需求 CPU:至少1核 内存:推荐 ≥ 1G 硬盘:推…...
CDP集群安全指南系列文章导读
[一]大数据安全综述 1-认证 身份验证是任何计算环境的基本安全要求。简单来说,用户和服务必须在使用系统功能并获得授权之前,向系统证明其身份(进行身份验证)。身份验证与授权紧密配合,共同保护系统资源。大多数 CDH …...
MT8788安卓核心板_MTK8788核心板参数_联发科模块定制开发
MT8788安卓核心板是一款尺寸为52.5mm x 38.5mm x 2.95mm的高集成度电路板,专为各种智能设备应用而设计。该板卡整合了处理器、图形处理单元(GPU)、LPDDR3内存、eMMC存储及电源管理模块,具备出色的性能与低功耗特性。 这款核心板搭载了联发科的MT8788处理…...
【微软,模型规模】模型参数规模泄露:理解大型语言模型的参数量级
模型参数规模泄露:理解大型语言模型的参数量级 关键词: #大型语言模型 Large Language Model #参数规模 Parameter Scale #GPT-4o #GPT-4o-mini #Claude 3.5 Sonnet 具体实例与推演 近日,微软在一篇医学相关论文中意外泄露了OpenAI及Claud…...
深入理解并发原子性、可见性、有序性与JMM内存模型
1. 并发三大特性 并发编程Bug的源头:原子性、可见性和有序性问题 1.1 原子性 一个或多个操作,要么全部执行且在执行过程中不被任何因素打断,要么全部不执行。在 Java 中,对基本数据类型的变量的读取和赋值操作是原子性操作&…...
电商项目-数据同步解决方案(四)商品下架同步更新ES索引库数据
商品下架索引库删除数据 一、 需求分析和业务逻辑 商品下架后将商品从索引库中移除。 主要应用技术有: 消息队列-RabbitMQ ,分布式搜索引擎-ElasticSearch,Eureka,Canal,Feign远程调用 (1)在…...
vue学习第一阶段
vue 什么是Vue? 概念:Vue是一个构建用户页面的渐进式框架 Vue的两种使用方式 Vue的核心开发 场景: 局部 {\color{red}局部} 局部模块改造Vue核心包& Vue插件 工程化开发场景: 整站 {\color{red}整站} 整站开发Vue2官网 https://v2.cn.vuejs.org/ 资料存放地址 D:\Baidu…...
React虚拟DOM:理解和应用
写在前面 在现代前端开发中,React 是一个非常流行的 JavaScript 库,用于构建用户界面。它引入了一个名为“虚拟 DOM”(Virtual DOM)的概念,这个概念对于 React 的高效性能和易用性至关重要。本文将深入探讨 React Vir…...
用python编写一个放烟花的小程序
import pygame import random # 代码解释及使用说明: # 首先,导入 pygame 和 random 库。pygame 用于创建游戏窗口和图形绘制,random 用于生成随机数。 # 初始化 pygame,并设置屏幕尺寸为 800x600 像素,设置窗口标题为…...
Git 仓库与文件管理笔记
Git 的三种仓库概念 本地仓库 (Local Repository) 位于本地 .git 文件夹中通过 git init 或 git clone 创建存储完整的项目历史和分支信息 远程仓库 (Remote Repository) 位于 GitHub、GitLab 等平台服务器使用 git remote -v 查看所有远程仓库默认远程仓库名通常为 origin 工…...
2024 年 docker 提示index.docker.io
发现 docker 提示以下错误: Error response from daemon: Get "https://index.docker.io/v1/search?qnginx&n25": dialing index.docker.io:443 container via direct connection because has no HTTPS proxy: connecting to index.docker.io:443:…...
TCP粘/拆包----自定义消息协议
今天是2024年12月31日,今年的最后一天,希望所有的努力在新的一年会有回报。❀ 无路可退,放弃很难,坚持很酷 TCP传输 是一种面向二进制的,流的传输。在传输过程中最大的问题是消息之间的边界不明确。而在服务端主要的…...
Modbus知识详解
Modbus知识详解 ## 1.什么是Modbus?**顾名思义**,它是一个Bus(总线),即总线协议。比如串口协议、IIC协议、SPI都是通信协议。你接触到这种协议,相信你所处的行业是工业电子方面或者你的产品用于工业。好了,…...
Java-创建一个结合CompletableFuture和自定义功能的工具类
1.重试机制:当异步任务失败时自动重试。 2.超时重试:在指定时间内未完成的任务进行重试。 3.批量处理:将多个任务批量执行并收集结果。 4.日志记录:为每个异步任务添加日志记录,便于调试和监控。 5.自定义线程池:允许用户传入自定义的线程池配置。 import java.util…...
【MATLAB第111期】基于MATLAB的sobol全局敏感性分析方法二阶指数计算
【MATLAB第111期】基于MATLAB的sobol全局敏感性分析方法二阶指数计算 一、简介 在MATLAB中计算Sobol二阶效应指数通常涉及到全局敏感性分析(Global Sensitivity Analysis, GSA),其中Sobol方法是一种流行的技术,用于评估模型输入…...
C语言-sprintf
sprintf是一个在C语言中用于字符串格式化的函数,其功能是将格式化的数据写入某个字符串中。该函数定义stdio.h在头文件中,原型为: int sprintf(char *string, const char *format, ...); 函数参数 string:指向一个字符数组的指针&#…...
APM 3.0.2 | 聚合B站、油管和MF的音乐播放器,支持歌词匹配
APM(Azusa-Player-Mobile)是一款基于B站的第三方音频播放器,现已扩展支持YouTube Music、YouTube、本地音乐、AList和MusicFree等平台。它不仅提供视频作为音频播放,还具备排行榜、分区动态等功能。用户可以通过添加Alist地址接入…...
Mono 和 IL2Cpp的区别
Mono特征: 标准项目中有Assembly-CSharp.dll , 但在更复杂的项目或特定配置中,可能会有其他.dll或结构变更 在游戏的数据目录下看到一系列的.dll文件,这些文件的语言一般为中间语言 CE附加 , 查看是否有Mono.dll相关模块 目录有MonoBleedingEdge文件夹 IL2Cpp 标准项目应该…...
力扣第389题—找不同
class Solution:def findTheDifference(self, s: str, t: str) -> str:# 对字符串 s 和 t 进行排序a sorted(s)b sorted(t)# 比较排序后的两个列表for i in range(len(a)):if a[i] ! b[i]:return b[i]# 如果前面的比较没有找到差异,那么差异字符在 t 的最后一个…...
我的桌面 1.9.75 | 个性化定制手机桌面,丰富的小组件和主题
我的桌面iScreen是一款万能桌面小组件APP,提供各种高颜值桌面主题与创意小组件自由组合。支持X面板、照片、待办清单、时钟、日历等实用有趣的小组件。拥有超过500种小组件供选择,包括灵动面板、滚动相册等,搭配300多种精美主题和高清壁纸&am…...
日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻
在如今就业市场竞争日益激烈的背景下,越来越多的求职者将目光投向了日本及中日双语岗位。但是,一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧?面对生疏的日语交流环境,即便提前恶补了…...
设计模式和设计原则回顾
设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...
springboot 百货中心供应链管理系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,百货中心供应链管理系统被用户普遍使用,为方…...
基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...
day52 ResNet18 CBAM
在深度学习的旅程中,我们不断探索如何提升模型的性能。今天,我将分享我在 ResNet18 模型中插入 CBAM(Convolutional Block Attention Module)模块,并采用分阶段微调策略的实践过程。通过这个过程,我不仅提升…...
【Go】3、Go语言进阶与依赖管理
前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课,做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程,它的核心机制是 Goroutine 协程、Channel 通道,并基于CSP(Communicating Sequential Processes࿰…...
Android15默认授权浮窗权限
我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...
IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)
文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...
【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统
目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索(基于物理空间 广播范围)2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...
AI书签管理工具开发全记录(十九):嵌入资源处理
1.前言 📝 在上一篇文章中,我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源,方便后续将资源打包到一个可执行文件中。 2.embed介绍 🎯 Go 1.16 引入了革命性的 embed 包,彻底改变了静态资源管理的…...
