超星学习通 | 超酷的学习方式 看课+答题姬 | 可自行配置题库

相关阅读

【网课必备】2022年最新智慧树网课自动刷课神器 附代码-自由者联盟
超星学习通最新版刷课工具 支持多线程 支持下载课程资源-自由者联盟

免责声明

以下教程仅用于个人研究、学习代码目的,为各位同学节省宝贵的学习时间,请勿用于商业用途。

杂谈

前一阵子在B站上看到热心网友分享了一个体验非常良好的工具,非常符合目前热心网友们上网课的习惯,课程进度由脚本来完成,答题可以在侧面显示,如果有题库可以调用题库,没有题库也可以自己来完成!

但是很多热心网友不太会用Pycharm,因此,我们帮热心网友进行了打包

打包版使用

使用教程

打包版下载完成后,您可以直接运行右键以管理员身份运行超星答题姬.exe

先输入手机号,然后输入密码(输入密码时不会显示********,确认输入完成后回车即可)

图片[1]-超星学习通 | 超酷的学习方式 看课+答题姬 | 可自行配置题库-FancyPig's blog

之后可以选择课程,填序号即可,譬如我们这里选择0即可

图片[2]-超星学习通 | 超酷的学习方式 看课+答题姬 | 可自行配置题库-FancyPig's blog

如果课程有题目会在左侧显示,大家也可以自行去搜索下对应的题目

配置文件

当然聪明的你一定发现了这里还有config.yml文件,该文件通常用于细节配置

multiSession: true  # 是否开启多会话模式
maskAcc: true  # 是否开启姓名手机号打码
tUIMaxHeight: 25  # TUI 最大显示高度
sessionPath: "session/"  # 会话存档路径
logPath: "logs/"  # 日志文件路径

# 视频
video:
  enable: true  # 是否执行任务
  speed: 1.0  # 播放速度
  wait: 15  # 完成等待时间
  report_rate: 58  # 视频播放汇报率 (没事别改)

# 试题
exam:
  enable: false  # 是否执行任务
  wait: 15  # 完成等待时间
  #fail_save: true  # TODO: 是否匹配失败自动保存

# 文档
document:
  enable: true  # 是否执行任务
  wait: 15  # 完成等待时间

# 搜索器
searcher:
  use: "jsonFileSearcher"  # 当前选择的搜索器 可用: restApiSearcher jsonFileSearcher sqliteSearcher
  # REST API 在线搜题
  restApiSearcher:
    url: "http://127.0.0.1:88/v1/cx"  # API url
    method: "POST"  # 请求方式
    req_field: "question"  # 请求参数
    rsp_field: "$.data"  # 返回参数 使用 JSONPath 语法进行查询
  # 本地 JSON 数据库搜索器 (key为题, value为答案)
  jsonFileSearcher:
    file_path: "questions.json"  # 数据库文件路径
  # 本地 sqlite 数据库搜索器
  sqliteSearcher:
    file_path: "questions.db"  # 数据库文件路径
    table: "question"  # 表名
    req_field: "question"  # 请求字段
    rsp_field: "answer"  # 返回字段

譬如可以自行调整播放速度,默认是1.0倍

  speed: 1.0  # 播放速度

同时,你也可以选择完成任务后等待时间,譬如完成后等待15秒

  wait: 15  # 完成等待时间

如果你自己有题库,或者会搭建题库服务器,可以在搭建完成后,启用自动答题的功能

exam:
  enable: true  # 是否执行任务

以上配置默认是关闭的false,因为我们这里不会提供题库,这个需要大家自己去积累,如果有自己积累的题库,欢迎在评论区里分享

源码使用

源码使用一般非为以下几个步骤,首先需要安装poetry管理项目

pip install poetry

然后,使用poetry安装全部依赖

poetry install

安装完成后,运行项目即可

poetry run python main.py

题库创建及维护

自建题库

这里很多网友会比较感兴趣,如何去自建一个题库,这里你可以创建一个questions.json的文件

然后,用json的格式显示,问题及答案

{
  "国字的演变的过程告诉我们,国防就是国家的防务,国防与()是密不可分的": "国家"
}

如果有多个就用逗号隔开即可,我们这里举个例子,比如有2个题,就是下面这样

{
  "自由者联盟侠是什么": "学习网络安全的代号",
  "FancyPig's blog的网址是什么": "https://www.cvv-goods.com"
}

然后你就可以照猫画虎,去整理自己的json题库了,其实在整理的过程中,你也会对题目进行学习,这是一个很不错的方式,在整理完成后,我们就让机器自动匹配上面的题库为我们回答问题了!

自建接口

您也可以尝试使用下面的项目自己建一个接口

https://github.com/SocialSisterYi/xuexiaoyi-to-xuexitong-tampermonkey-proxy

利用第三方API

您也可以从网上找一些第三方的题库,譬如之前我看网上分享了一些免费的接口

answer-search-bank

请使用POST方法

https://api.answer.uu988.xyz:4545/answer/search

请求内容

{
  question: '新时期要注重选拔任用()、()、()、()、()的干部,对政治不合格的干部实行“一票否决”,已经在领导岗位的坚决调整。';
}

响应内容

 {
   errno: 0,
   message: "search success",
   data: {
    question: "新时期要注重选拔任用()、()、()、()、()的干部,对政治不合格的干部实行“一票否决”,已经在领导岗位的坚决调整。",
    answers: [
       "A",
       "B",
       "C",
       "D",
       "E"
    ],
    from: "https://www.yisouti.com/search"
   }
 }

hive-net.cn

可以支持超星,智慧树,知到,Welearn,四史,马原,毛概,大学mooc多个平台的

这里是直接GET请求

https://www.hive-net.cn/backend/wangke/search?token=free&question=我国的国体是

返回结果

{
    "code": 0,
    "data": {
        "total": 1,
        "reasonList": [
            {
                "id": 409583,
                "question": "我国的国体是",
                "reason": "人民民主专政",
                "type": 1,
                "options": "A:人民代表大会制度,B:人民民主专政,C:共产党领导的多党合作和政治协商制度,D:民族区域自治制度",
                "explanation": "无",
                "course": "中国大学MOOC慕课,中国大学MOOC慕课未分类",
                "tag": "毛概,多党合作,制度"
            }
        ],
        "tokenRemainTimes": 4995,
        "tokenExpireTime": "2030-01-01"
    }
}

全能搜题

使用GET请求

https://study.jszkk.com/api/open/seek?q=从哪一年开始,我国HIV感染者和艾滋病患者数出现了突飞猛进的增长,并逐年上升?(   )

获得题目答案

{
    "code": 200,
    "msg": "",
    "data": {
        "type": -1,
        "content": "从哪一年开始,我国HIV感染者和艾滋病患者数出现了突飞猛进的增长,并逐年上升?(   )",
        "answer": "2004",
        "created_at": "2021-12-24T08:31:38.000000Z",
        "updated_at": "2021-12-24T08:31:38.000000Z"
    }
}

但是上面的响应码不一定是code,也不一定是200,所以你可能还需要修改exam.py中的代码

源码打包

如果您也想将上面的源码打包exe分享给好友,可以参考下面的教程

本文隐藏内容 – 披萨会员可见

首先,你需要安装pyinstaller

pip install pyinstaller

然后只需要在pycharm的终端中输入下面的命令即可

pyinstaller -i icon.ico -F main.py
图片[3]-超星学习通 | 超酷的学习方式 看课+答题姬 | 可自行配置题库-FancyPig's blog

打包后的exe文件会在dist文件中

图片[4]-超星学习通 | 超酷的学习方式 看课+答题姬 | 可自行配置题库-FancyPig's blog

main.exe文件是我们打包的,我们还需要将配置文件config.yml从根目录中拷入,然后打包成压缩文件发送给热心网友即可

图片[5]-超星学习通 | 超酷的学习方式 看课+答题姬 | 可自行配置题库-FancyPig's blog

© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容