Python Selenium 自动评分脚本 - 内蒙古开放大学
import os
import time
import random
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
import tkinter as tk
def check_browser():
#检查是否已经打开了浏览器
try:
options = Options()
options.add_experimental_option('debuggerAddress', '127.0.0.1:9527')
browser = webdriver.Chrome(options=options)
browser.execute_script('return true')
return True
except:
return False
def run_program():
if not check_browser():
os.system(r'start chrome --remote-debugging-port=9527 --user-data-dir="D:\评阅用"')
options = Options()
options.add_experimental_option('debuggerAddress', '127.0.0.1:9527')
browser = webdriver.Chrome(options=options)
while True:
for handle in browser.window_handles:
browser.switch_to.window(handle)
if '内蒙古开放大学' in browser.title:
print('用户登录成功!')
break
else:
time.sleep(1)
continue
break
progress_label.config(text='正在运行程序...')
progress_label.update()
while True:
try:
score_box = browser.find_element(By.CLASS_NAME, 'score-box')
score_input = score_box.find_element(By.TAG_NAME, 'input')
score_input.clear()
score_input.send_keys(str(random.randint(94, 99)))
time.sleep(1)
submit_button = browser.find_element(By.CLASS_NAME, 'nav-text')
submit_button.click()
time.sleep(2)
except:
continue
else:
if '已到最后' in browser.page_source:
print('已到最后,暂停程序')
progress_label.config(text='已到最后,暂停程序')
progress_label.update()
break
time.sleep(1)
#创建GUI界面
window = tk.Tk()
window.title('自动评分程序')
window.geometry('300x200')
start_button = tk.Button(window, text='开始运行', command=run_program)
start_button.pack(pady=20)
progress_label = tk.Label(window, text='')
progress_label.pack()
window.mainloop()
本脚本使用 Python 和 Selenium 库自动评分内蒙古开放大学的课程,提高评分效率。
脚本功能:
- 浏览器启动检测: 检查是否已经打开了浏览器,如果没有则自动启动 Chrome 浏览器并进入调试模式。
- 用户登录验证: 脚本会验证用户是否已登录内蒙古开放大学平台,确保评分操作可以正常进行。
- 随机评分: 脚本会随机生成 94-99 之间的评分,并填写到评分框中。
- 进度提示: 脚本会通过 GUI 界面显示程序运行状态,并在评分完成后提示用户程序已暂停。
使用方法:
- 确保已安装 Python 和 Selenium 库。
- 将脚本保存为
.py文件。 - 运行脚本,点击“开始运行”按钮。
- 脚本会自动启动 Chrome 浏览器,并完成评分操作。
注意事项:
- 脚本需要在 Chrome 浏览器调试模式下运行,请确保 Chrome 浏览器已开启调试模式。
- 脚本可能会受到网站改版的影响,请根据实际情况进行调整。
- 请勿将脚本用于恶意目的。
代码说明:
check_browser()函数用于检查是否已经打开了浏览器。run_program()函数包含了脚本的主要逻辑,包括启动浏览器、登录验证、随机评分、进度提示等功能。tkinter库用于创建 GUI 界面。
希望本脚本能够帮助您提高评分效率!
原文地址: https://www.cveoy.top/t/topic/fYyd 著作权归作者所有。请勿转载和采集!