Selenium 自动提取网页分数 - 内蒙古开放大学
from selenium.webdriver.chrome.options import Options from selenium import webdriver from selenium.webdriver.common.by import By import time import os import random
def get_driver(): # 检查是否已经打开浏览器 browser_opened = False for handle in webdriver.Chrome().window_handles: browser_opened = True break
# 创建浏览器实例或在已有浏览器中操作
if browser_opened:
options = Options()
options.debugger_address = '127.0.0.1:9222'
driver = webdriver.Chrome(options=options)
else:
os.system(r'start chrome --remote-debugging-port=9222 --user-data-dir='D:\评阅用'')
options = Options()
options.add_experimental_option('debuggerAddress', '127.0.0.1:9222')
driver = webdriver.Chrome(options=options)
return driver
driver = get_driver()
找到有'内蒙古开放大学'字样的标签页
while True: for handle in driver.window_handles: driver.switch_to.window(handle) if '内蒙古开放大学' in driver.title: print('登录成功') break else: time.sleep(3) continue break
查找所有分数和输入框元素
score_elements = driver.find_elements(By.CLASS_NAME, 'summary-sub-title') answer_elements = driver.find_elements(By.CLASS_NAME, 'answer-content')
提取分数
for i in range(len(score_elements)): if i >= len(answer_elements): break if score_elements[i].text and answer_elements[i].text: score = score_elements[i].text print('得分:', score)
原文地址: https://www.cveoy.top/t/topic/fZZO 著作权归作者所有。请勿转载和采集!