超星多线程学习通小助手2310版-python 分析第四期

 新版本已经准备好,正在测试中

效果图和联系方式,请“转至末尾”

软件是免费的,在分析一期末尾下载

这几天都比较忙碌,就少更新点吧

正文:

获取所有的课程信息,并储存url

def deal_course_all(url_class):
    new_url_dict = url_302(url_class)
    new_url = new_url_dict["new_url"]
    course_HTML = course_get(new_url)
    i = 0
    chapter_dict = {}
    course_unit_list = course_HTML.xpath("//div[@class='units']")  # 课程中的大章节
    try:
        for course_unit in course_unit_list:
            recursive_course_dict(course_unit.xpath("./div"), chapter_dict)
        chapter_list = []
        for chapter_item in chapter_dict:
            i = i + 1
            try:
                print("%d" % i, chapter_item)
                chapter_list.append(chapter_dict[chapter_item])
            except Exception as e:
                print("chapter处理错误", e)
    except Exception as e:
        print(e)
    while True:
        enter = input("请输入资源所在章节的序号:")
        try:
            url_chapter = chapter_list[int(enter) - 1]
            deal_misson([url_chapter], new_url_dict["cpi"], 1)
            break
        except Exception as e:
            print("'%s'不是可识别的输入,请重新输入" % enter)

 注释:

这段代码的作用是打开指定路径下的图片文件,并显示出来。具体来说,代码执行的过程如下:

1. 导入`PIL`模块中的`Image`类和`time`模块。
2. 定义一个名为`show_image`的函数,该函数接受一个参数`img_path`,表示图片的路径。
3. 在函数内部,使用`Image.open()`方法打开指定路径下的图片文件,并将其赋值给变量`img`。
4. 使用`print()`函数打印出图片的格式、大小和模式。其中,`img.format`表示图片的格式(如JPEG、PNG等),`img.size`表示图片的大小(以像素为单位),`img.mode`表示图片的模式(如RGB、RGBA等)。
5. 使用`img.show()`方法显示图片。
6. 使用`time.sleep(5)`方法暂停程序执行5秒钟。
7. 使用`print()`函数打印出"请等待"。
8. 调用`show_image()`函数,传入图片的路径作为参数。

总体来说,这段代码实现了打开图片、显示图片、暂停程序执行和输出信息的功能。

 

读取章节页数

def read_cardcount(courseId: str, clazzid: str, chapterId: str, cpi: str):
    url = 'https://mooc1-2.chaoxing.com/mycourse/studentstudyAjax'
    headers = {
        'Accept': '*/*',
        'Accept-Encoding': 'gzip, deflate, br',
        'Accept-Language': 'zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6',
        'Connection': 'keep-alive',
        'Content-Length': '87',
        'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
        'Cookie': cookieStr,
        'Host': 'mooc1-2.chaoxing.com',
        'Origin': 'https://mooc1-2.chaoxing.com',
        'Referer': '******',
        'Sec-Fetch-Dest': 'empty',
        'Sec-Fetch-Mode': 'cors',
        'Sec-Fetch-Site': 'same-origin',
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.60',
        'X-Requested-With': 'XMLHttpRequest'
    }
    data = "******".format(courseId, clazzid, chapterId, cpi)

 注释:

这段代码定义了一个名为`read_cardcount`的函数,该函数接受四个参数:`courseId`、`clazzid`、`chapterId`和`cpi`。函数内部构建了一个HTTP请求的URL和请求头,并使用这些信息发送一个POST请求到指定的URL。

具体来说,函数首先定义了请求的URL为******。然后,它创建了一个字典类型的变量`headers`,其中包含了各种HTTP请求头信息,例如Accept、Content-Type、Cookie等等。接下来,函数使用`format()`方法将传入的四个参数拼接成一个字符串,并将其作为POST请求的数据部分。最后,函数使用Python的`requests`库发送POST请求,并将响应结果返回。

下面是测试成功视频

这是个视频文件,同时运行了四个账号,并且每个账号都是多线程进行的“学习”

原视频跳转 

交流方式

QQ1219235650(小号)
[email protected]

你可能感兴趣的:(学习,python,网络)