# 导入随机数模块
import random
from selenium import webdriver
from selenium.webdriver.common.by import By

# 初始化 webdriver
driver = webdriver.Chrome()  # 或其他浏览器驱动

# 打开目标网页
driver.get('https://www.example.com')  # 替换为实际网址

# 定位所有题目元素
elements = driver.find_elements(By.CLASS_NAME, 'question')  # 替换为实际的 CSS 选择器

subject_number = 1
summary_numbers = []
for element in elements:
    # 找到分值元素
    summary_element = element.find_element(By.CLASS_NAME, 'summary-sub-title')  # 替换为实际的 CSS 选择器
    summary_text = summary_element.text
    summary_number = ''
    for char in summary_text:
        if char.isdigit():
            summary_number += char
    # 转换为整数类型并加入列表中
    summary_number = int(summary_number)
    summary_numbers.append(summary_number)
    # 随机减去1-2分
    random_subtract = random.randint(1, 2)
    summary_number -= random_subtract
    # 输出当前题目的分值
    print(f'第{subject_number}题的分值为:{summary_number}')
    subject_number += 1

# 关闭浏览器
driver.quit()

代码说明:

  1. 导入模块: 导入 random 模块用于生成随机数,导入 webdriver, By 模块用于操作浏览器。
  2. 初始化 webdriver: 选择合适的浏览器驱动,如 Chrome 或 Firefox。
  3. 打开目标网页: 使用 driver.get() 方法打开包含题目分值的网页。
  4. 定位元素: 使用 find_elements 和 CSS 选择器定位所有题目元素和分值元素。
  5. 提取分值: 遍历每个题目元素,提取分值文本并转换为整数类型。
  6. 随机减分: 使用 random.randint(1, 2) 生成 1 或 2 的随机数,并从分值中减去。
  7. 输出结果: 打印每个题目的原始分值和减分后的分值。
  8. 关闭浏览器: 使用 driver.quit() 方法关闭浏览器。

注意事项:

  • 需要根据实际网页结构修改 CSS 选择器,以正确定位题目和分值元素。
  • 可以根据需要调整随机减分的范围。
Python 自动提取题目分值并随机减分

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

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