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.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

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)

    # 切换到目标窗口
    for handle in browser.window_handles:
        browser.switch_to.window(handle)
        if '内蒙古开放大学' in browser.title:
            break

    # 等待成绩输入框出现
    wait = WebDriverWait(browser, 10)
    element = wait.until(EC.presence_of_element_located((By.NAME, 'score')))

    # 清空输入框并输入随机成绩
    element.clear()
    score = random.randint(95, 99)
    element.send_keys(str(score))
    print(f'输入成绩为:{score}')
Python Selenium自动化: 实现网页成绩自动输入

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

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