Python 自动提取题目分值并随机减分
# 导入随机数模块
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()
代码说明:
- 导入模块: 导入
random模块用于生成随机数,导入webdriver,By模块用于操作浏览器。 - 初始化 webdriver: 选择合适的浏览器驱动,如 Chrome 或 Firefox。
- 打开目标网页: 使用
driver.get()方法打开包含题目分值的网页。 - 定位元素: 使用
find_elements和 CSS 选择器定位所有题目元素和分值元素。 - 提取分值: 遍历每个题目元素,提取分值文本并转换为整数类型。
- 随机减分: 使用
random.randint(1, 2)生成 1 或 2 的随机数,并从分值中减去。 - 输出结果: 打印每个题目的原始分值和减分后的分值。
- 关闭浏览器: 使用
driver.quit()方法关闭浏览器。
注意事项:
- 需要根据实际网页结构修改 CSS 选择器,以正确定位题目和分值元素。
- 可以根据需要调整随机减分的范围。
原文地址: https://www.cveoy.top/t/topic/fZ45 著作权归作者所有。请勿转载和采集!