【自动化】考试答题自动化完成答案,如何实现100%正确呢

一、科目仿真考试不能自动答题

我的答案是可以的,电脑程序可以模拟人的操作完成所有的答题并提交结束考试

二、分析页面内容

完成一个题目,包括判断题,对与错2选1答案,单选题ABCD4选1答案,多选题大家想一想

F12查看按钮 id 有没有规律呢

我们在看一下题库中是什么的

我们的思路是将题库的答案替换成和按钮一样的数字

复制代码
if da == '对':
    da = 11
elif da == '错':
    da = 12
elif da == 'A':
    da = 21
elif da == 'B':
    da = 22
elif da == 'C':
    da = 23
elif da == 'D':
    da = 24

注意if elif 是对齐的不是错位的

现在还有一个问题多选题,若答案是ABC,怎么处理呢。

用一个for da in dalist:每一个答案点击一次循环语句

复制代码
   page.ele(f'css:#btnDa{da}').click()
page.ele('css:#btnNext2').click()

最终完成所有的操作。

三、题库在哪里

当请求网址的时候服务器会返回一个题库

F12找到题库地址

https://tk.mnks.cn/kaoshiti/?tk=kms\&cx=C1\&t=6502824376164\&sign=70F618D0E0223B46307B713AE862669C

复制代码
打开网址前就要监听数据包,拿到的字符串 需提取题库内容,并转成JSON语句
page.listen.start('kaoshiti/')
page.get('https://www.jsyks.com/kms-fzks')
resp = page.listen.wait()
info = resp.response.body
复制代码
kaoshitiku = re.findall('var ExamCnts = (.*?);',info)[0]
print(type(kaoshitiku))
json_data = json.loads(kaoshitiku)
print(json_data)

四、自动化程序

复制代码
from DrissionPage._pages.chromium_page import ChromiumPage
page = ChromiumPage()
import json
import re
import time
page.listen.start('kaoshiti/')
page.get('https://www.jsyks.com/kms-fzks')
resp = page.listen.wait()
info = resp.response.body
# print(type(info),info)
kaoshitiku = re.findall('var ExamCnts = (.*?);',info)[0]
print(type(kaoshitiku))
json_data = json.loads(kaoshitiku)
print(json_data)
for t in json_data:
    tm = t['tm']
    dalist = t['da']
    print(tm,dalist)
    for da in dalist:
        if da == '对':
            da = 11
        elif da == '错':
            da = 12
        elif da == 'A':
            da = 21
        elif da == 'B':
            da = 22
        elif da == 'C':
            da = 23
        elif da == 'D':
            da = 24
        print(tm, da)
        page.ele(f'css:#btnDa{da}').click()
    page.ele('css:#btnNext2').click()
    time.sleep(1)
page.ele('css:#btnNext3').click()
page.ele('x://*[@id="Tip_Msg"]/div/span/input[1]').click()
相关推荐
jz_ddk11 分钟前
[指南] Python循环语句完全指南
开发语言·python·continue·循环·for·while·break
Evand J20 分钟前
【Python代码例程】长短期记忆网络(LSTM)和无迹卡尔曼滤波(UKF)的结合,处理复杂非线性系统和时间序列数据
python·lstm·滤波
workflower1 小时前
易用性和人性化需求
java·python·测试用例·需求分析·big data·软件需求
嚯嚯歪1 小时前
攻克腾讯 TCaptcha 滑块验证码:纯 HTTP 协议逆向实战
爬虫·python·逆向·验证码识别
じ☆冷颜〃2 小时前
随机微分层论:统一代数、拓扑与分析框架下的SPDE论述
笔记·python·学习·线性代数·拓扑学
程序员敲代码吗2 小时前
提升Python编程效率的五大特性
开发语言·python
List<String> error_P3 小时前
Python蓝桥杯常考知识点-模拟
开发语言·python·蓝桥杯
比奇堡鱼贩3 小时前
python第五次作业
开发语言·前端·python
码农小韩4 小时前
AIAgent应用开发——DeepSeek分析(二)
人工智能·python·深度学习·agent·强化学习·deepseek
喵手4 小时前
Python爬虫实战:构建一个高健壮性的图书数据采集器!
爬虫·python·爬虫实战·零基础python爬虫教学·构建图书数据·采集图书数据·图书数据采集