Skip to content

WELearn Test AI Helper;WELearn听力测试AI助手:WeLearn随行课堂; 使用讯飞语音听写配合AI获得welearn听力测试的答案

Notifications You must be signed in to change notification settings

mcitem/WELearnTestAIHelper

Repository files navigation

WELearn Test AI Helper

使用讯飞语音听写配合AI获得welearn听力测试的答案

声明

  • 本项目基于AGPL-3.0开放源代码,仅供技术学习和交流,开发者团队并未授权任何组织、机构以及个人将其用于商业或者盈利性质的活动。也从未使用本项目进行任何盈利性活动。个人或者组织,机构如果使用本项目产生的各类纠纷,法律问题,均由其本人承担。
  • 如果您开始使用本项目,即视为同意项目免责声明中的一切条款,条款更新不再另行通知。
  • 本脚本仅供学习交流使用,对于使用本脚本造成的任何后果,均由使用者本人承担。

兼容性

  • 答案正确率受语音听写识别和AI阅读理解能力影响,输出题目文本可能存在错误,建议自行阅读输出的题目文本,斟酌作答

用户脚本index.js目前且只去获取PartA的听力题选择题的的题目数据

对于不同测试域名,需要修改config.jsonbaseURL的键值

wetest.sflep.com (默认)

https://wetestoss.sflep.com/resource/sound/

welearn.sflep.com

https://courseres.sflep.com/Test/ItemRes/sound/

FFmpeg

如果在用户脚本能够方便、兼容地,快速地将 MP3 转为 16k pcm数据,且提交讯飞语音听写能够正常得到内容的话,那么就不在需要python了


比如在用户脚本中运行ffmpeg.wasm( 这好像并不现实,也无法cdn引入和生成web worker

期待大佬提供支持(

依赖

Windows需要安装ffmpeg才能正常使用

下载 ffmpeg-master-latest-win64-gpl.zip 手动配置系统环境变量安装(推荐)

科学上网安装法

winget install --id Gyan.FFmpeg

主要依赖

pip install wget
pip install ffmpeg-python
pip install websockets

使用 Moonshot AI API的 依赖 (推荐)

这个免费api给了比较多,不用实名注册就有

pip install openai

使用 讯飞星火API 的 依赖

pip install --upgrade spark_ai_python

)也可以手动复制output.txt的内容手动扔给ai

使用

  • 请自行注册 讯飞语音听写 并获得接口调用所需的认证字段

  • 配置config.json

    • baseURL 根据测试域名选择 见本文兼容性处
    • iat配置项为 讯飞语音听写
    • kimi配置项为 Moonshot AI
    • spark配置项为 讯飞星火大模型

    )也可以手动复制文本题目输出喂给ai,只有baseURL、iat是必填的

index.js加载到 ScriptCatTamperMonkey

  • 打开考试界面 index.js会等待4秒以等待试卷加载

    )如果4秒还不够加载,请直接修改index.js代码

  • 在题目界面的窗口复制生成的json题目数据

    )如果焦点在考试界面中,也会自动写入剪贴板

  • 将复制的数据粘贴到data.json中,

  • 执行 main.py

    )相当于 按顺序执行

    • 执行 index.py
    • 执行 websocket.py
    • 执行 dist.py
  • 执行 AI调用 或直接复制output.txt的内容手动扔给AI 让ai给答案 )你也可以修改dist.py,制作更为详细的prompt

data.json

data.json的数据结构。与html中的类名基本保持相同(除了加s表示复数

{  //注意:json并不支持注释
  "all_links": [ //所有音频源的链接
    "div1.mp3",
    "yy1.mp3", 
    "yy2.mp3"
  ],
  "data": [
    {
      "test_center_link": "div1.mp3", //听力的主要内容
      "test_hovs": [
        {
          "test_hov_link": "yy1.mp3", // 每一题的题目
          "choices": [
            "A) xxx",
            "B) xxx",
            "C) xxx",
            "D) xxx"
          ]
        },
        {
          "test_hov_link": "yy2.mp3",
          "choices": [
            "A) xxx",
            "B) xxx",
            "C) xxx",
            "D) xxx"
          ]
        }
      ]
    },
    {
        "test_center_link":"...", //第二段听力内容
        "test_hovs":[/**... */]  // 这段内容对应的题目
    }
  ]
}

index.js

ScriptCat

GreasyFork

已尝试禁用离开考试检测和禁止复制粘贴右键等

为什么用 user script 不用 python的xxx ?

)因为一开始就想纯用户脚本实现,用python其他解析html的库也是可以的(,再不济可以selenium(

License

WELearn Test AI Helper licensed under AGPLv3.

Copyright © 2024 by MCitem.

About

WELearn Test AI Helper;WELearn听力测试AI助手:WeLearn随行课堂; 使用讯飞语音听写配合AI获得welearn听力测试的答案

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published