一个用于抓取易查分网页数据并保存到本地 Excel 的工具。
Note
本软件仅供学习交流使用
✨ 便捷高效的数据爬取工具
- 🖥️ 图形化界面 - 无需命令行,点击即用
- ⚙️ 灵活配置 - 通过友好的设置向导完成配置
- 📊 批量查询 - 支持大批量学生数据查询
- ⚡ 多线程爬取 - 可调节线程数,加快爬取速度
- 💾 自动保存 - 查询结果自动保存到Excel
Tip
💡 推荐使用图形化设置界面! 无需手动编辑配置文件,程序提供友好的设置向导。
第一步:准备 Excel 用户数据文件
- 创建一个 Excel 文件(
.xlsx格式),包含学生信息 - 第一行必须是表头,包含字段名(如:姓名、学号、班级等)
- 从第二行开始填写实际的学生数据
- 点击查看示例表格
第二步:运行程序
# 已提供打包好的可执行文件,无需安装 Python 或依赖
# Windows: 在项目根目录双击可执行文件,或在终端运行:
yichafen_tools.exe第三步:设置配置信息 程序首次运行或配置不完整时,会自动打开 ⚙️ 程序设置 窗口:
- 输入 Base URL(从易查分主页网址获取)
- 选择 Excel 用户数据文件
- 可选:调整爬取线程数
- 点击 💾 保存设置 即可
✅ 配置完成!后续可直接点击 ⚙️ 设置 按钮随时修改配置。
程序会自动生成 config.json 文件。您也可以通过以下方式了解配置参数:
| 参数 | 必填 | 说明 |
|---|---|---|
base_url |
✅ | 易查分网站的基本URL(不含https://) |
usersDB_path(excel) |
✅ | 用户数据库Excel文件路径 |
num_threads |
❌ | 并发线程数,默认为4,建议范围:4-8 |
config.json 示例:
{
"base_url": "abc123.yichafen.com",
"usersDB_path(excel)": "./data/students.xlsx",
"num_threads": 4
}如何获取 Base URL?
- 在浏览器中打开易查分网站
- 查看地址栏,例如:
https://abc123.yichafen.com/... - 复制域名部分:
abc123.yichafen.com - 在设置中输入该域名(不需要
https://前缀)
✅ 正确格式: abc123.yichafen.com
❌ 错误格式: https://abc123.yichafen.com 或 https://abc123.yichafen.com/
usersDB_path(excel) 指定的Excel文件需要满足以下格式要求:
- 第一行(表头):必须包含列名,列名需要与查询页面的字段名匹配
- 第二行及以后:实际的用户数据
程序会自动读取Excel中与查询页面所需字段匹配的列。列名不区分大小写,支持模糊匹配。
例如:
- 查询页面需要 "姓名" → Excel表头可以是 "姓名"、"学生姓名"、"名字" 等
- 查询页面需要 "学号" → Excel表头可以是 "学号"、"学生学号"、"ID" 等
| 姓名 | 学号 | 班级 |
|---|---|---|
| 张三 | 2024001 | 一年级一班 |
| 李四 | 2024002 | 一年级一班 |
| 王五 | 2024003 | 一年级二班 |
Important
配置注意事项:
- ✅ Excel文件必须存在且路径正确
- ✅ 至少需要包含查询页面所需的一个字段列
- ✅ 仅支持
.xlsx格式 - ✅ 表头名称需要与查询页面字段相关(支持模糊匹配)
- ❌ 不支持
.xls或其他格式
配置完成后,直接运行程序(已打包为可执行文件,无需手动安装依赖):
# Windows: 双击或在终端运行可执行文件
yichafen_tools.exe程序会按以下流程执行:
-
读取配置 - 加载 config.json 文件
- 如果配置不完整,自动打开设置窗口
-
加载用户数据库 - 读取Excel文件中的用户数据
- 自动匹配表头字段
-
显示查询选择窗口 - 列出所有可用的查询界面
- 选择要爬取的考试/评比名称
- 可在此窗口点击 ⚙️ 设置 修改配置
-
选择保存路径 - 指定结果保存位置
- 默认建议与Excel文件同目录
-
开始爬取 - 并发获取查询结果
- 显示进度条
- 完成后显示成功/失败数量
线程数影响爬取速度:
- 线程数越多:爬取速度越快,但服务器可能会限制请求
- 建议值:4-8
- 最大值:16(超出可能被限制)
调整方式:
- 通过 GUI 设置界面修改(推荐)
- 或直接编辑
config.json:修改num_threads值
程序启动
↓
[检查配置] → 配置完整? → 显示查询选择窗口
↓ ↓
配置不完整 (用户选择查询对象)
↓ ↓
[打开设置窗口] [选择保存路径]
↓ ↓
1. 输入Base URL [开始爬取数据]
2. 选择Excel文件 ↓
3. 设置线程数 [保存结果到Excel]
↓ ↓
[保存配置] [完成!]
↓
[重新显示查询窗口]
A: 程序首次运行会自动打开设置向导:
- 程序检测到配置不完整时,自动打开 ⚙️ 程序设置 窗口
- 按照窗口提示填写三项信息:
- Base URL:从浏览器地址栏复制易查分域名
- Excel文件:点击"📁 选择文件"选择用户数据表
- 线程数:默认为4,可按需调整
- 点击 💾 保存设置,配置完成!
A:
- 打开浏览器,访问易查分网站
- 地址栏显示:
https://abc123.yichafen.com/xxx/xxx - 只需复制:
abc123.yichafen.com - 不需要包含
https://和后面的路径
❌ 常见错误:https://abc123.yichafen.com/(包含了https://和尾部斜杠)
A: 不需要完全匹配! 程序支持模糊匹配:
- 查询页面需要"姓名" → 你的Excel可以是"姓名"、"学生姓名"、"名字"等
- 查询页面需要"学号" → 你的Excel可以是"学号"、"学生学号"、"ID"等
- 列名不区分大小写("NAME" 和 "name" 视为相同)
A:
- 确认Excel文件路径正确,文件确实存在
- 检查路径中是否有空格或特殊字符
- 确保使用的是
.xlsx格式,不是.xls - 建议使用 📁 选择文件 按钮浏览选择,而不是手动输入路径
A:
- 增加线程数:在设置中将线程数从4改为6-8
- 检查网络:确保网络连接正常
- 查看服务器:易查分服务器可能做了速率限制,建议:
- 减少线程数试试
- 等待一段时间后重试
- 分次爬取,而不是一次性大量查询
A: 可能原因及解决方法:
-
Base URL 错误
- 检查是否正确复制了域名
- 确保域名格式正确(不含https://)
-
Excel表头不匹配
- 查看易查分查询页面需要哪些字段
- 确保Excel表头包含相应的列名
-
Excel文件被占用
- 关闭所有打开的Excel文件
- 重新运行程序
-
网络连接问题
- 检查是否能正常访问易查分网站
- 尝试切换网络或等待后重试
A: 是的! 有两种方法:
方法1:通过GUI(推荐)
- 运行程序:双击
yichafen_tools.exe,或在终端中运行yichafen_tools.exe(已打包,无需安装 Python 或依赖) - 在查询选择窗口点击 ⚙️ 设置 按钮
- 修改配置后点击 💾 保存设置
方法2:直接编辑配置文件
- 用文本编辑器打开项目根目录的
config.json - 修改相应参数
- 保存文件
A: 不会! 程序的保存机制:
- 如果指定的Excel文件不存在,会新建文件
- 如果文件已存在,新查询结果会追加到现有数据后面
- 表头会自动扩展,不会丢失之前的数据
A:
- ✅ 支持:
.xlsx格式 - ❌ 不支持:
.xls格式、.csv等其他格式 - 建议使用 Microsoft Excel 2007 或更新版本保存的
.xlsx文件
A: 需要以下依赖包:
pip install -r requirements.txt主要依赖:
requests- 网络请求beautifulsoup4- 网页解析openpyxl- Excel操作PySide6- 图形化界面tqdm- 进度显示
解决方法:
- 对比Excel表头与易查分查询页面的字段名
- 确保表头位于第一行
- 确保数据从第二行开始
- 尝试调整列名(程序支持模糊匹配)
解决方法:
- 关闭所有打开的Excel文件
- 检查保存路径是否可写(权限问题)
- 尝试保存到不同的目录
如有问题,请:
- 检查本文档的 FAQ 和故障排除部分
- 确保按照 快速开始 的步骤正确配置
- 查看程序窗口中的错误提示信息