
image.png (857.84 KB, 下载次数: 0)
下载附件
2025-6-21 09:15 上传
平台的首页和网址
起因是博主在期末作业快截至的时候没有找到可以自动做题的脚本,一个一个问ai又很麻烦,就看看能不能找到api接口,遂有此贴
首先是通过分析作业的的数据包

image.png (157.95 KB, 下载次数: 0)
下载附件
2025-6-21 09:25 上传
可以看到是调用这个api来获得json
https://www.eduplus.net/api/course/homeworkQuestions/5f7d379f96584ed5b932c44d1b1a66dd/student/detail
5f7d379f96584ed5b932c44d1b1a66dd 这个应该是参数 先按下不表
在源代码处全局搜索一下homeworkQuestion

image.png (378.11 KB, 下载次数: 0)
下载附件
2025-6-21 09:31 上传
发现有一个url和我们数据包的api一模一样,我们进这个js细看

image.png (49.76 KB, 下载次数: 0)
下载附件
2025-6-21 10:01 上传
相信到这个界面,大多数人都可以猜个大概直接出结果了
但是博主还是通过函数调用,逆向一下
hwExerciseDetails({commit: s}, e) {
return n.get(`/api/course/homeworkQuestions/${e}/student/detail`).then(t => o(t))
}
看参数没有很明确,所以我们搜索看那里调用了这个函数

image.png (163.32 KB, 下载次数: 0)
下载附件
2025-6-21 10:09 上传
可以得到传进来的参数是exerciseId
搜索exerciseId可以看到

image.png (21.31 KB, 下载次数: 0)
下载附件
2025-6-21 10:12 上传
对其调用的hwExerciseList搜索找到该函数(虽然之前也看到了hwExerciseList)

image.png (338.41 KB, 下载次数: 0)
下载附件
2025-6-21 10:16 上传
里面有一个api传参是homeworkId,但是homeworkId很显然会多次出现(我搜了,太多了),所以按照ExerciseList的命名风格搜索homeworklist(hwhome搜不出来,homework也太多了)

image.png (342.07 KB, 下载次数: 0)
下载附件
2025-6-21 10:34 上传
得到api,参数是courseId,courseId可以通过某一门课的数据包获得,(打开某一个作业也可通过数据包获得对应的作业id)

image.png (397.68 KB, 下载次数: 0)
下载附件
2025-6-21 10:40 上传
通过之前获得的api拼接得到的url=https://www.eduplus.net/api/course/homeworks/published/student?courseId=68d329efdf9a4f71baf9b5a623ce3d91

image.png (108.07 KB, 下载次数: 0)
下载附件
2025-6-21 10:43 上传
得到homeworklist 再次拼接 url=https://www.eduplus.net/api/course/homeworkQuestions/student?homeworkId=915b7629d4d9483ab65720a739b8c143

image.png (68.73 KB, 下载次数: 0)
下载附件
2025-6-21 10:45 上传
得到questionlist 再次拼接 url=https://www.eduplus.net/api/course/homeworkQuestions/4cb599c562b645b6b0173ca062562900/student/detail

image.png (61.72 KB, 下载次数: 0)
下载附件
2025-6-21 10:46 上传
最后总结得到 题目存储在 course - homework - question
最后关于数据的处理及爬取,我写了一个脚本,效果如下

image.png (68.01 KB, 下载次数: 0)
下载附件
2025-6-21 10:54 上传
建议大家都好好学习(悲),不要像我一样期末才突击复习。
项目地址(Github):RealYasuHaru/EDUPLUS-Homework-Scraper: 从在线教育平台 EDUPLUS (u+)爬取课程作业信息,并将其转换为易于阅读和处理的格式
(度盘) :https://pan.baidu.com/s/1SIKInTXixHiA7NjTScX5PQ?pwd=783t 提取码: 783t