代码小白即可完成的刷题脚本 ( Cursor 和 阿里云的 API 的 Python 刷题脚本)

利用 cursor 编写刷题脚本

项目地址GitHub - LY-zhang-yi-hao/刷题脚本🌐
📺 附上详细的讲解视频点击观看
实现效果:🚀
在这里插入图片描述

初衷

在当今教育环境下,经常需要面对大量重复性的练习题。为了减轻负担,借助AI技术开发刷题脚本,合理分配娱乐时间(狗头)

AI技术的快速发展,特别是Cursor等AI编程助手的出现,即使编程基础较弱的同学也能轻松开发出实用的刷题工具。本项目旨在降低编程门槛,让更多学生受益于AI技术。

定位:编程有一点基础,能看懂基本的语句,这个脚本主要利用python进行编写,css和javascript需要用到,但是都是利用AI以及查阅资料进行编写。

前言

10月在GitHub已经开源了一个简单的刷题脚本.
项目地址:

  • 实验室安全考核 刷题脚本:
  • 简单介绍:
    本项目使得刷题的脚本的编写下限变低,利用阿里云模型回答问题,不需要进行题库的编写或网页搜索还需绕过许多反爬。
    将问题发送给AI,拿到答案后,进行回答填写。
    本代码只是提供一个示例。
    另外根据浏览器类型,需要不同的浏览器驱动,请自行谷歌搜索下载,code已经注释,请勿忘更改路径。
    ps:需要简单的css基础或利用截图发给AI给出定位网页元素的python代码,获取问题和填写答案。
    68747470733a2f2f62752e6475736179732e636f6d2f323032342f31322f30382f363735353635353536633732372e676966.gif|400

正文

  1. 调取阿里云api,回答问题python代码块
  2. 另外根据浏览器类型,需要不同的浏览器驱动,请自行谷歌搜索下载,code已经注释,请勿忘更改路径。
    Microsoft Edge WebDriver | Microsoft Edge Developer
  3. python环境的配置与安装,看炮哥的视频,配置的很简单,不用改环境那么麻烦. 环境配置链接

项目实战

  • 驾校科目一考试,拿到题目和选项,将题目和选项发送给阿里云大模型,阿里云模型回答问题,得到答案后,再进行答案填写。

逻辑 :

  1. 打开网址: https://www.jsyks.com/
  2. 点击科目一顺序练习,跳转到新的页面
  3. 获得当前的题目和选项的信息
  4. 把信息发送给阿里云模型
  5. 从阿里云模型得到答案
  6. 答案填入
  • 查找网页元素快捷键:F 12 或者 FN+F 12
  • 如果有验证码登陆 :人工干预,到输入验证码阶段,停止代码运行,人工输入之后,在键盘输入任意键,继续运行代码。

cursor 输入内容:

  • 我的角色:我是一个python小白,没有相应的css和javascript基础,所以请你对以后的代码写好非常详细的注释。
  • 任务: 请你帮我写一个python刷题脚本,打开edge浏览器,具体的题目网址: https://www.jsyks.com/ ,然后点击一些选项(待定,我给你具体的网页元素位置)拿到题目和选项,将题目和选项发送给阿里云大模型,阿里云模型回答问题,得到答案后,再进行答案填写。
  • 我的Edge驱动路径,‘D:/python/msedgedriver. exe’
  • 这是调用阿里云api的代码:
from http import HTTPStatus
import dashscope
from dashscope import Generation
import random
import json


class DashScopeAPI:
	def __init__(self):
		# 配置API-KEY
		dashscope.api_key = "sk-f02484ea78744f5a90a6b680bc288dbb"
	
	# 单轮对话
	def call_with_messages(self, messages):
		response = Generation.call(
			model="qwen-turbo",
			messages=messages,
			# 设置随机数种子seed,如果没有设置,则随机数种子默认为1234
			seed=random.randint(1, 10000),
			# 将输出设置为"message"格式
			result_format='message'
		)
		if response.status_code == HTTPStatus.OK:
			print(response.output.choices[0]['message']['content'])
			# print(response)
		else:
			print('Request id: %s, Status code: %s, error code: %s, error message: %s' % (
				response.request_id, response.status_code,
				response.code, response.message
			))
if __name__ == '__main__':
	dsapi = DashScopeAPI()
	messages = [
		
		{
   'role': 'system', 'content': 'You are a helpful assistant.'},
		{
   'role': 'user', 'content': '我的题目,请你只需要回答答案即可。91、实验室电器设备所引起的火灾,应:A.用水灭火B.用二氧化碳或干粉灭火器灭火C.用泡沫灭火器灭火'},
	]
	# 单轮对话
	dsapi.call_with_messages(messages)

  • 后续慢慢截图和调试就可以了,详情看我的视频(建议二倍速食用)

最后代码

# 导入所需的库

from selenium import webdriver  # 用于控制浏览器

from selenium.webdriver.common.by import By  # 用于定位网页元素

from selenium.webdriver.support.ui import WebDriverWait  # 用于等待网页元素加载

from selenium.webdriver.support import expected_conditions as EC  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

啊!你好,生活!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值