查询助手使用文档📙

欢迎

此项目已归档


大纲

查询助手是什么?

查询助手(英文名称:QueryHelper)可以让您便捷的查询成绩。QueryHelper使用Fast API开发,由网页端和客户端驱动组成,所有数据运算均在客户端完成,无需将用户的账号密码等个人信息上传云端,大大降低用户个人信息泄露的风险和远程服务器开销。
QueryHelper具有无人值守功能,可以在目标服务器超载时实现无人值守等待响应,自动识别验证码,失败自动重试等。
访问主页🖇

问题反馈

如果在使用过程中发现了什么缺陷,或是有新的需求提议,请先检查一下以前的文档、issue 是否提过。
如果疑似 Bug 或是功能提议,请创建一个 issue 用于追踪问题;
Githubhttps://github.com/cnhkbbs/QueryHelper

联系

开发者Email: mail@sboxm.eu.org


快速开始

获取QueryHelper

QueryHelper由网页端和驱动程序端两部分组成
你可以在GIthub Release 页面获取已经构建打包完成的驱动程序.

或是从蓝奏云 https://sboxm.lanzoub.com/b019iflqb 密码:bvvy 下载驱动程序

如果想要自行从源代码构建,请参阅以下章节:
构建📙

使用QueryHelper

Step1 运行驱动

运行截图

Step2 打开前端网页

访问前端网页:
点此访问🖇
网页截图


参数

参数名 说明 示例值
账号 学号或教工号 123456789
密码 账号对应的密码 11223344
姓名 中文姓名 张三
目标服务器 教务网址 http://127.0.0.1
安全时间 执行查询操作每次向目标服务器发送请求的间隔时间,最低为2秒 5
单次执行次数 每次提交任务和自动重试次数,最大为10次 5
gnmkdm 功能模块代码,可从浏览器自行抓包获得 N121605
Header 对的目标服务器请更换请求头 2

常见问题 Q & A

🤔 无法提交任务?打开驱动后仍显示无法连接驱动?

🌈 请尝试重启驱动或刷新前端网页

🤔 提交任务后驱动未作出响应、驱动卡住不动?

🌈 鼠标左键单击选中驱动,然后按下鼠标右键即可

🤔 如何获取gnmkdm?

🌈 手动登录目标教务网址,然后按“F12”打开开发者模式,在开发者模式中选择“网络”或“network”选项,然后点击教务网菜单中的成绩查询,观察开发者选项框中的请求地址便可找到gnmkdm值
81947.png

🤔 驱动显示未知异常?没有找到想要的答案?

🌈 疑似 Bug 或是功能提议,请创建一个 issue 用于追踪问题;
🌈 Github地址:https://github.com/cnhkbbs/QueryHelper
🌈 开发者Email: mail@sboxm.eu.org


接口

💡检查驱动连接

基本说明

接口地址:http://127.0.0.1:2023
返回格式:json
请求方式: post
请求参数:无

请求参数说明

💡提交查询任务

基本说明

接口地址:http://127.0.0.1:2023/submit
返回格式:HTML
请求方式: post
请求参数: name,password,chinese_name,server,safe_time,executions,gnmkdm,header

请求参数说明

名称 类型 必填 说明
name string 必填 学号或教工号
password string 必填 账号对应的密码
chinese_name string 必填 中文姓名
server string 必填 教务网址
safe_time string 必填 执行查询操作每次向目标服务器发送请求的间隔时间,最低为2秒
executions string 必填 每次提交任务和自动重试次数,最大为10次
gnmkdm string 必填 功能模块代码,可从浏览器自行抓包获得
header string 必填 请求头,对于有反爬措施的目标服务器请更换请求头

💡获取查询结果

基本说明

接口地址:http://127.0.0.1:2023/getresult
返回格式:HTML
请求方式: post
请求参数:无

请求参数说明


开发者模式

关于开发者模式

开发者模式可以通过一定的指令,解除驱动对用户提交任务参数的限制,例如安全时间和单次执行次数等。

如何开启

账号栏输入 dev 并在其它栏随便输入一些字符,提交即可启用开发者模式。


构建

QueryHelper项目主要由两部分组成:驱动主仓库QueryHelper,以及前端仓库staticcdn/QueryHelper

环境准备

  • Python 3.11
  • PyCharm (可选)

开始构建

安装python软件包

自行安装所有必要的python软件包,无特别版本要求,使用PyCharm自动安装即可

安装pyinstaller

1
pip install pyinstaller

修改ddddocr init.py 第466行

修改前

1
image = image.resize((int(image.size[0] * (64 / image.size[1])), 64), Image.ANTIALIAS).convert('L')

修改为

1
image = image.resize((int(image.size[0] * (64 / image.size[1])), 64), Image.LANCZOS).convert('L')

进行编译

使用以下指令进行编译

1
pyinstaller -F main.py -p 项目软件包绝对地址

例如

1
pyinstaller -F main.py -p E:\pyProject\QueryHelper\venv\Lib\site-packages

修改 main.spec

修改编译生成的 main.spec 文件第11行为

1
datas=[('./venv/Lib/site-packages/ddddocr/common.onnx','ddddocr'),('./venv/Lib/site-packages/onnxruntime/capi/onnxruntime_providers_shared.dll','onnxruntime\\capi')],

使用修改后的配置文件重新编译

1
pyinstaller .\main.spec

编译完成

编译完成的文件位于项目根目录的dist文件夹下。