自动化刷题小练习

驾校题库自动化刷题,使用了selenium以及requests等一些爬虫用的库

python 复制代码
from selenium import webdriver
from selenium.webdriver.common.by import By
import requests
import re
import time
driver=webdriver.Chrome()

driver.get("https://www.jsyks.com/kms-mnks")

question_list=driver.find_elements(By.CSS_SELECTOR,"div.Exam ul li")
print(question_list)

for li in question_list:
    answer_id=li.get_attribute("c")
    # print(answer_id)
    link=f'https://tiba.jsyks.com/Post/{answer_id}.htm'
    """
    通过 request获取数据
    """
    response=requests.get(link)
    html_data=response.text
    # print(html_data)
    a=re.findall('<br/>答案:<u>(.*?)</u>',html_data)[0]
#     获取答案内容
    bs=li.find_elements(By.CSS_SELECTOR,"b")
    for b in bs:
        choose=b.text
        if choose=="正确":
            choose="对"
        elif choose=="错误":
            choose="错"
        if len(choose)>2:
            choose=choose[0]
        for ans in a:
            if choose == ans:
                b.click()


submit=driver.find_element(By.CSS_SELECTOR,"div.ExamBtn u.btnJJ")
submit.click()
time.sleep(30)
相关推荐
张文君1 分钟前
ubuntu26.04坏块分区隔离急速版
java·前端·python
茉莉玫瑰花茶7 分钟前
知识库的构建 [ 3 ]
开发语言·python
旧梦95279 分钟前
Java 枚举类详解:从基础语法到高级用法
java·开发语言·python
yivifu10 分钟前
查拼音程序升级版
开发语言·python
新时代牛马17 分钟前
CFS调度源码:从 schedule() 到pick_next_entity 的vruntime 公平
linux·运维·网络
2601_9621741718 分钟前
Spring 核心技术解析【纯干货版】- XI:Spring 数据访问模块 Spring-Oxm 模块精讲
数据库·python·spring
海兰27 分钟前
【应用】基于 Next.js 16 + Python mplfinance的金融K线图与技术指标可视化平台(二)
javascript·python·金融
0+11127 分钟前
Linux --库制作与原理
linux·运维·服务器
uxiang_blog28 分钟前
Linux修改计算名字和添加删除用户名。
linux·运维·服务器
nangonghen36 分钟前
Agent如何传递不同类型的ID给MCP Server
开发语言·python