自动化刷题小练习

驾校题库自动化刷题,使用了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)
相关推荐
2401_887724501 分钟前
怎样使用Navicat高级特权进行从备份中提取单表数据_企业数据保护.txt
jvm·数据库·python
小飞象—木兮3 分钟前
《Power BI数据分析与可视化指南》:从概念到实操的全解析····(附相关材料下载)
大数据·人工智能·python·数据挖掘·数据分析
王琦03184 分钟前
第十一章 管理Linux软件包和进程
linux·运维·服务器
2402_8548083711 分钟前
如何用 stopPropagation 阻止事件冒泡防止触发父级回调
jvm·数据库·python
2301_7826591813 分钟前
Golang怎么实现方法集与接口的匹配_Golang如何理解值类型和指针类型实现接口的区别【详解】
jvm·数据库·python
蓝色的杯子14 分钟前
龙虾-OpenClaw一文详细了解-手搓OpenClaw-9 Skills系统
人工智能·python·openclaw·龙虾
AI视觉网奇15 分钟前
python 截取矩形 缩放,旋转
开发语言·python·numpy
2301_8148098616 分钟前
PHP源码开发用二手硬件划算吗_性价比与稳定性权衡【操作】
jvm·数据库·python
Yyyyy123jsjs16 分钟前
轻松通过Python调用外汇api获取汇率数据
开发语言·python
啦啦啦_999917 分钟前
4. 网络编程
python