import osimport timeimport randomfrom selenium import webdriverfrom seleniumwebdriverchromeoptions import Optionsfrom seleniumwebdrivercommonby import Bydef check_browser #检查是否已经打开了浏览器 try
根据报错信息,可以看到是ElementNotInteractableException,即元素无法交互,可能是因为元素没有完全加载出来或者被其他元素遮挡了。可以尝试加入显式等待或者调整元素定位方式。
例如,可以在输入成绩前加入显式等待,等待元素可见并可交互:
from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC
element = WebDriverWait(browser, 10).until(EC.element_to_be_clickable((By.NAME, 'score'))) element.clear() score = random.randint(95, 99) element.send_keys(str(score)) print('输入成绩为:', score)
另外,也可以尝试调整元素定位方式,例如使用CSS选择器定位:
element = browser.find_element(By.CSS_SELECTOR, 'input[name="score"]') element.clear() score = random.randint(95, 99) element.send_keys(str(score)) print('输入成绩为:', score
原文地址: https://www.cveoy.top/t/topic/g69l 著作权归作者所有。请勿转载和采集!