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
from selenium.webdriver.common.action_chains import ActionChains
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
if __name__ == '__main__':
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
while True:
try:
score_box = browser.find_element(By.CLASS_NAME, 'score-box')
except:
time.sleep(1)
continue
else:
score_box.clear()
score_box.send_keys(str(random.randint(95, 99)))
nav_wrapper = browser.find_element(By.CLASS_NAME, 'nav-wrapper')
ActionChains(browser).move_to_element(nav_wrapper).click().perform()
time.sleep(1)
continue
脚本功能:
- 检查浏览器是否已经打开,如果没有打开则启动浏览器并设置调试端口和用户数据目录。
- 自动登录内蒙古开放大学网站,并判断登录是否成功。
- 找到评分框元素,如果未找到则等待出现。
- 清除评分框内容,并填写 95-99 之间的随机分数。
- 找到提交按钮元素,并模拟鼠标点击提交。
- 循环执行以上步骤,实现自动评分功能。
使用说明:
- 将脚本保存为 .py 文件。
- 修改脚本中用户数据目录的路径。
- 运行脚本,即可自动完成评分操作。
注意:
- 脚本需要安装 Selenium 库。
- 脚本需要使用 Chrome 浏览器。
- 脚本仅供学习参考,请勿用于任何非法用途。
- 脚本中使用了
random.randint()函数生成随机数,可以根据需要修改随机数的范围。 - 脚本中使用了
time.sleep()函数控制执行速度,可以根据需要调整时间间隔。 - 脚本中使用了
ActionChains类模拟鼠标操作,可以根据需要添加其他鼠标操作。 - 本脚本仅针对内蒙古开放大学评分系统进行设计,请勿直接使用于其他网站。
免责声明:
本脚本仅供学习参考,作者不对脚本的使用造成任何损失负责。请使用者自行判断是否符合相关法律法规。
原文地址: https://www.cveoy.top/t/topic/fYt7 著作权归作者所有。请勿转载和采集!