加入论坛打分功能的代码如下:

def forum_score_program(self): try: # 循环打分论坛分值 while True: if not self.running: break

        if self.paused:
            continue

        # 等待论坛打分输入框出现
        while True:
            try:
                forum_score_input = self.browser.find_element(By.XPATH, '//input[@ng-model="currentEnrollment.forum_score.display_score"]')
                break
            except:
                pass
            time.sleep(3)

        # 判断是否已经打过分
        try:
            blank_message = self.browser.find_element(By.CLASS_NAME, "blank-message")
            if blank_message.text == "暂无":
                # 填写分值
                score = random.randint(94, 99)
                forum_score_input.send_keys(str(score))
                time.sleep(1.5)
                # 点击保存按钮
                save_button = self.browser.find_element(By.XPATH, '//button[@ng-click="saveScore(currentEnrollment)"]')
                save_button.click()
                time.sleep(2.5)
                self.update_text_box(f"本次论坛分值为:{score}")
                self.update_running_label('论坛打分中...')
            else:
                self.update_text_box("本学生已打过论坛分,跳过")
        except:
            pass

        # 点击下一个学生
        next_student_element = self.browser.find_element(By.XPATH, '//i[@ng-click="goToNextStudent()"]')
        if "disabled" in next_student_element.get_attribute("class"):
            print("已经到最后一个学生")
            self.update_running_label('已到最后,请手动保存后重新开始!')
            break
        else:
            next_student_element.click()
            time.sleep(3)
            self.update_running_label('论坛打分中...')

except Exception as e:
    print(e)
    self.update_running_label('论坛打分失败,请重试')
finally:
    self.start_forum_button.config(state='normal')
    self.stop_score_button.config(state='disabled')
    self.pause_button.config(state='disabled')

需要修改的位置:

  1. __init__函数
Python 自动评分机器人:百分制、小分值和论坛打分功能

原文地址: https://www.cveoy.top/t/topic/f2fc 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录