浙江省高等学校在线开放课程共享平台–大学生心理健康教育刷课脚本
本文最后更新于 156 天前,其中的信息可能已经有所发展或是发生改变。
from os import popen
try:
    from requests import Session
    from ddddocr import DdddOcr
except ImportError:
    print("Installing necessary packages...")
    popen("pip install requests ddddocr -i https://pypi.tuna.tsinghua.edu.cn/simple").read()
    from requests import Session
    from ddddocr import DdddOcr


headers = {
     'Accept': 'application/json, text/javascript, */*; q=0.01',
     'SignCheck': '75f88846476b6e8141148ac02c3f44b6',
     'TimeDate': '1680539114000',
     'User-Agent':'Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/99.0.4844.51Safari/537.36',
}


def check_code(sess: Session):
    url = 'https://centro.zjlll.net/ajax?time=1680535352000&service=%2Fcentro%2Fapi%2Fauthcode%2Fcreate&params='
    response = sess.get(url, headers=headers).json()
    code_id = response['data']['id']
    code = DdddOcr(show_ad=False).classification(img=response['data']['image'])
    return code_id, code


def login(sess: Session, username: str, password: str):
    code_id, code = check_code(sess)
    data = {
        "login_name": username,
        "password": password,
        "captchaCode": code,
        "captchaId": code_id,
        "redirect_url": "https://www.zjooc.cn",
        "app_key": "1ddadc7d-6f0a-4eb0-b844-24dd28e33e74",
        "autoLoginTime": "7"
    }
    url = "https://centro.zjlll.net/login/doLogin"
    response = sess.post(url, data=data, headers=headers).json()
    data = {
        "auth_code": response['authorization_code'],
        "autoLoginTime": 7,
        "limitLoginTime": ""
    }
    url = f"https://www.zjooc.cn/autoLogin"
    response = sess.get(url, params=data, headers=headers).json()
    return response


def get_courses(sess: Session):
    data = {
        "service": "/jxxt/api/course/courseStudent/getStudentCourseChapters",
        "params[pageNo]": 1,
        "params[courseId]": "8a2284fd850eb40a01856c532685081d",
        "params[urlNeed]": 0,
    }
    url = "https://www.zjooc.cn/ajax"
    response = sess.get(url, params=data, headers=headers).json()
    return response


def watch_video(sess: Session, course_id: str, chapter_id: str, play_time: int):
    data = {
        "service": "/learningmonitor/api/learning/monitor/videoPlaying",
        "params[chapterId]": chapter_id,
        "params[courseId]": course_id,
        "params[playTime]": str(play_time),
        "params[percent]": "100"
    }
    url = "https://www.zjooc.cn/ajax"
    response = sess.get(url, params=data, headers=headers)
    return response


def watch_pdf(sess: Session, course_id: str, chapter_id: str):
    data = {
        "service": "/learningmonitor/api/learning/monitor/finishTextChapter",
        "params[chapterId]": chapter_id,
        "params[courseId]": course_id,
    }
    url = "https://www.zjooc.cn/ajax"
    response = sess.get(url, params=data, headers=headers)
    return response


def main(username: str, password: str):
    session = Session()
    try:
        status = login(session, username, password)['success']
    except KeyError:
        status = login(session, username, password)['success']
    if status:
        courses = get_courses(session)
        for x in courses["data"]:
            for y in x["children"]:
                for z in y["children"]:
                    if z["resourceType"] == 1:
                        ret = watch_video(session, z["courseId"], z["id"], z["vedioTimeLength"]).json()["message"]
                    else:
                        ret = watch_pdf(session, z["courseId"], z["id"]).json()["message"]
                    print(f"{z['name']}: {ret}")


if __name__ == "__main__":
    try:
        main(input("请输入您的用户名: "), input("请输入您的密码: "))
    except KeyError:
        print("请确保用户名, 密码输入正确,请重试...")
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇