Code Monkey home page Code Monkey logo

weiban-tool's Introduction

Weiban-Tool

安全微伴自动考试助手(2024)


本项目只针对考试,刷课助手GitHub有很多,自行选择使用

-推荐去这里 安全微伴自动刷课助手 https://github.com/Coaixy/weiban-tool


原理: 每个人题目不一样,但是考过一次就固定,每天题目不一样。通过历史作答获取答案即可一键满分。

程序依赖

  • Python3: 命令行运行 python -V,确认输出版本号为 3 开头
  • requests:使用命令 pip install requests 安装

使用方式

① 登录

前往 https://weiban.mycourse.cn/#/login 登录账号

② 获取用户 ID 和凭证 token

在浏览器按键盘 F12,进入开发者工具,选择上方选项卡的 应用 (Application) 选项,在左侧展开 本地储存空间 (Local storage),点击展开后的项目,再在页面中点击 user 查看它的值。如下图所示:

需要在其中获取信息:

  1. tenantCode 填入 安全微课答题助手.pytenantCode
  2. userId 填入 安全微课答题助手.pyuserId
  3. token 填入 安全微课答题助手.pyx_token

这两个信息格式均为:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

③ 考一次试

在网页中,启动一次考试,随便乱填后点击提交。

如果当日之前已经考过一次,可跳过该步骤,进入下一步骤。如果自己的考试次数已经不足,那就别做了。

④ 获取考试项目 ID 和历史考试 ID

保持浏览器开发者工具开启,点击进入考试记录界面,再点击一个在今日的考试记录,然后进入浏览器开发者工具界面。

在浏览器开发者工具界面,选择 网络 (Network) 选项卡,此时在左侧列表底部应该有两个 API 请求记录:listHistory.do 和 reviewPaper.do

首先点击 listHistory.do,再在右侧选择 荷载 (Payload) 选项卡,获取以下信息:

  • examPlanId 填入 安全微课答题助手.pyexamPlanId

然后点击 reviewPaper.do,再在右侧选择 荷载 (Payload) 选项卡,获取以下信息:

  • userExamId 填入 安全微课答题助手.pyuserExamId

流程截图如下:

⑤ 启动考试,获取用户考试计划 ID

保持浏览器开发者工具开启,点击参加考试,确认后进入考试界面。

在浏览器开发者工具界面,选择 网络 (Network) 选项卡,此时在左侧列表底部应该有一个 API 请求记录:startPaper.do

点击 startPaper.do,再在右侧选择 荷载 (Payload) 选项卡,获取以下信息:

  • userExamPlanId 填入 安全微课答题助手.pyuserExamPlanId

⑥ 试运行程序

此时所有信息应当已经获取完毕,请确认 安全微课答题助手.py 的字段已经填写完全

另外确认脚本中 final_run = False.

运行该程序:python .\安全微课答题助手.py

确认答案获取比例为 50/50 即 100% 再进行下一步。若此时不是 100%,不要正式运行,检查前面操作是否正确。

⑦ 正式运行程序

安全微课答题助手.py 中的 final_run 改为 True,再运行一遍程序,此次程序将会正式运行并提交

分数为最后一行的 score,正常情况下应该是 100 满分。

TODO

#1. 登录模块,用户输入学校名称、学号、密码即可直接进行后续操作,无需F12。

#2. 解决第1次作答人工乱填耗费时间的问题,定义一个初始题库,运行相关代码完成第一次考试。

问题反馈&更新日志

  1. 题库不变机制约束条件:连续两次作答间隔时间不能过长,否则不满足题库不变情况。 2024.4.29
  2. 已完成考试记录网站逻辑修改,不再显示问题和答案ID,提交时需要根据content进行匹配 2024.8.22
  3. 新增questions.json,已覆盖WHUT理工科、文科研究生线上报到题库 2024.8.22

本项目仅供参考交流学习,欢迎提pr共同完善。

weiban-tool's People

Contributors

kmoonn avatar chriskimzht avatar

Stargazers

Chen Xiaoming avatar konata233 avatar  avatar  avatar  avatar  avatar  avatar Alickei avatar  avatar  avatar Loong avatar yal avatar  avatar

Watchers

 avatar

weiban-tool's Issues

好像不符合题库不变的条件

我去查了下题库,截至今天,不满足每次重做题库不变的原则了QAQ
len(set(questions_1+questions_2))的结果是75,ORZ

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.