一、课程核心介绍
本课程基于DrissionPage 自动化库,讲解网页自动化操作、二维码生成、模拟用户交互等实战技能,覆盖环境配置、元素定位、输入点击、循环操作、延时控制、第三方库应用等核心内容,适用于自动化测试、脚本开发入门学习。
二、模块一:DrissionPage 基础环境与登录自动化
重点
- DrissionPage 库的安装与导入
- WebPage 类的初始化与网页打开
- XPath 元素定位方法
- 输入框输入、按钮点击基础操作
- 简单网页登录脚本编写
难点
- 精准编写 XPath 定位表达式
- 元素定位失败的排查方法
- 网页加载延迟与元素等待处理
考点
- DrissionPage 核心类与函数使用
- XPath 定位语法基础
- 登录自动化脚本的编写逻辑
填空题
- DrissionPage 中用于创建网页对象的类是__________。
- 打开指定网页需要调用 WebPage 对象的__________方法。
- 定位网页元素使用的核心方法是__________。
- 向输入框输入文本使用__________方法。
- 点击网页元素使用__________方法。
选择题
- 以下哪个用于导入 DrissionPage 核心类?()A. from DrissionPage import WebPage B. import DrissionPageC. from DrissionPage import Driver D. import WebPage
- page.ele () 方法的作用是?()A. 打开网页 B. 定位网页元素C. 输入文本 D. 点击按钮
- XPath 定位表达式的格式是?()A. xpath://[@属性 ="值"] B. //[@属性 ="值"]C. xpath:*[@属性 ="值"] D. @属性 ="值"
- 以下哪个方法可以实现按钮点击?()A. input () B. click () C. get () D. text ()
- 用于获取元素文本内容的属性是?()A. val () B. text C. content D. html
判断题
- DrissionPage 只能用于浏览器自动化操作。()
- 使用 page.get () 方法必须传入网页 URL 地址。()
- XPath 定位是 DrissionPage 唯一的元素定位方式。()
- input () 方法可以向输入框自动填充内容。()
- 定位元素时,XPath 表达式书写错误会导致脚本报错。()
编程题
- 编写代码:导入 DrissionPage,创建网页对象并打开百度首页。
- 编写代码:使用 XPath 定位百度输入框,输入
网络安全。 - 编写代码:定位百度搜索按钮并执行点击操作。
- 编写完整代码:实现 phpMyAdmin 网页的账号密码自动登录。
- 编写代码:获取指定网页元素的文本内容并打印输出。
三、模块二:第三方库应用 - 二维码生成
重点
- qrcode 库的安装与使用
- 生成二维码并保存为图片文件
- 字符串数据转换为二维码的方法
难点
- 第三方库的环境配置
- 自定义二维码内容与保存路径
考点
- qrcode 库核心函数 make () 和 save ()
- 图片文件保存的语法格式
填空题
- 生成二维码需要使用__________第三方库。
- 生成二维码对象使用__________方法。
- 将二维码保存为图片使用__________方法。
- 二维码生成时传入的参数是__________。
- 保存图片时需要指定文件的__________。
选择题
- 生成二维码的正确代码是?()A. qrcode.create () B. qrcode.make ()C. qrcode.gen () D. qrcode.new ()
- save () 方法的作用是?()A. 生成二维码 B. 保存二维码为图片C. 读取二维码 D. 修改二维码内容
- 以下代码正确的是?()A. qrcode.make ("test").save ("qrcode.png")B. qrcode.save ("test").make ("qrcode.png")C. make ("test").qrcode.save ("qrcode.png")D. save ("qrcode.png").qrcode.make ("test")
- 二维码可以保存的格式不包括?()A. .png B. .jpg C. .exe D. .gif
- 导入 qrcode 库的语句是?()A. import qrcode B. from qrcode import *C. install qrcode D. include qrcode
判断题
- 不安装 qrcode 库也可以直接运行二维码生成代码。()
- make () 方法必须传入字符串类型的参数。()
- save () 方法可以指定图片保存的文件名和格式。()
- qrcode 库只能生成英文内容的二维码。()
- 生成的二维码会自动保存在脚本同级目录下。()
编程题
- 编写代码:安装并导入 qrcode 库。
- 编写代码:生成内容为
hello world的二维码。 - 编写代码:将二维码保存为
qrcode_test.png。 - 编写代码:生成包含 URL 地址的二维码并保存。
- 编写完整代码:实现自定义内容的二维码生成与保存。
四、模块三:DrissionPage 高级自动化 - 循环交互脚本
重点
- time 库延时控制操作
- for 循环在自动化中的应用
- 连续获取元素文本并自动输入
- 回车操作的模拟实现
难点
- 循环次数与延时时间的合理设置
- 连续元素操作的逻辑编写
- 模拟回车换行的实现方法
考点
- time.sleep () 延时函数使用
- for 循环语法与自动化结合
- 元素文本获取与自动输入
- 模拟回车操作的方法
填空题
- Python 中实现延时等待需要使用__________库。
- 延时指定秒数使用__________方法。
- 循环执行固定次数使用__________语句。
- 获取元素文本内容使用__________属性。
- 模拟键盘回车操作输入__________转义字符。
选择题
- time.sleep (5) 表示延时多久?()A. 5 毫秒 B. 5 秒 C. 5 分钟 D. 5 小时
- 循环执行 20 次的语句是?()A. for i in 20 B. for i in range (20)C. loop (20) D. while (20)
- 模拟回车输入的字符是?()A. '\t' B. '\n' C. '\r' D. '\b'
- 以下哪个用于循环内重复输入内容?()A. page.input () B. ele.input ()C. input.ele () D. ele.click ()
- 自动化脚本中延时的作用是?()A. 加快执行速度 B. 等待网页加载C. 关闭网页 D. 定位元素
判断题
- time 库需要单独安装才能使用。()
- for 循环可以让自动化操作重复执行。()
- '\n' 在输入框中代表回车确认。()
- 延时时间设置越长,自动化脚本越稳定。()
- 自动化脚本中可以不使用延时直接执行循环。()
编程题
- 编写代码:导入 time 库并实现延时 3 秒操作。
- 编写代码:使用 for 循环重复执行 10 次打印操作。
- 编写代码:定位输入框,循环输入文本并模拟回车。
- 编写完整代码:实现单词自动输入答题自动化脚本。
- 编写代码:优化自动化脚本,调整延时时间提升稳定性。
五、模块四:综合自动化脚本开发
重点
- 多模块代码整合编写
- 完整自动化流程设计
- 脚本调试与优化方法
难点
- 复杂业务逻辑的自动化实现
- 脚本异常处理与容错机制
考点
- 综合脚本的编写规范
- 各知识点融合应用
填空题
- 自动化脚本编写的第一步是__________。
- 综合脚本中需要__________所有用到的库。
- 网页操作前必须确保__________成功加载。
- 代码调试时可以使用__________查看执行结果。
- 优化自动化脚本主要调整__________和__________。
选择题
- 综合脚本的执行顺序是?()A. 导入库→打开网页→元素操作→循环 / 延时B. 打开网页→导入库→元素操作→循环 / 延时C. 循环 / 延时→打开网页→元素操作→导入库D. 元素操作→导入库→打开网页→循环 / 延时
- 脚本优化不包括?()A. 调整延时 B. 优化定位表达式C. 删除必要代码 D. 增加容错处理
- 以下哪个不属于综合自动化场景?()A. 自动登录 B. 自动答题C. 手动点击 D. 二维码生成
- 调试脚本时,核心排查对象是?()A. 电脑配置 B. 元素定位与代码语法C. 网络速度 D. 浏览器版本
- 完整自动化脚本的核心目标是?()A. 代码行数最多 B. 模拟人工操作C. 运行速度最快 D. 代码最复杂
判断题
- 综合脚本可以将 DrissionPage 和 qrcode 结合使用。()
- 自动化脚本不需要调试可以直接运行。()
- 合理的延时可以提高自动化脚本的成功率。()
- 元素定位错误不会影响综合脚本的执行。()
- 综合脚本可以实现无人值守的自动化操作。()
编程题
- 编写综合代码:实现网页自动登录 + 生成网页二维码。
- 编写综合代码:实现循环自动操作 + 延时控制。
- 编写代码:调试并修复元素定位失败的自动化脚本。
- 编写完整代码:实现自定义业务的自动化操作脚本。
- 编写代码:优化综合脚本,提升执行效率与稳定性。