元素定位综合练习平台

练习 Selenium 8 种常规定位方法 + JavaScript 执行器定位技巧

练习说明

本页面提供了丰富的元素场景,用于练习 Selenium 8 种常规定位方法(ID、NAME、CLASS_NAME、TAG_NAME、LINK_TEXT、PARTIAL_LINK_TEXT、XPATH、CSS_SELECTOR)以及通过 execute_script 调用原生 document.* API 的 JavaScript 定位方式。

进阶:JS 高级操作(滚动条拖动 + HTML5 视频)

本模块练习 Selenium 中 execute_script() 的两个高级用法:通过 JS 直接操作滚动条(纵向/横向)通过 JS 控制 HTML5 视频的播放、暂停、跳转、音量等属性。

练习目标 1:通过 JS 操作垂直滚动条

下方是一个 6 行 × 6 列的网格滚动容器,具有纵向滚动条(右侧)。Selenium 中 无法直接通过 WebDriver API 拖动页面原生滚动条,可通过 driver.execute_script() 操作 DOM 属性 scrollTop 或方法 scrollTo({top:n})scrollIntoView() 实现垂直滚动、 滚动到指定单元格(基于 offsetTop 计算居中位置)等操作。

📜 滚动状态 纵向scrollTop: 0
1-1
1-2
1-3
1-4
1-5
1-6
2-1
2-2
2-3
2-4
2-5
2-6
3-1
3-2
3-3
3-4
3-5
3-6
4-1
4-2
4-3
4-4
4-5
4-6
5-1
5-2
5-3
5-4
5-5
5-6
6-1
6-2
6-3
6-4
6-5
6-6

练习目标 2:通过 JS 操作水平滚动条

下方是一个课程章节卡片横向滚动容器(10 个章节卡片横向排列),具有水平滚动条(底部)。Selenium 中 无法直接通过 WebDriver API 拖动页面原生滚动条,可通过 driver.execute_script() 操作 DOM 属性 scrollLeft 或方法 scrollTo({left:n})scrollIntoView()实现横向滚动、滚动到指定章节卡片(基于 offsetLeft 计算居中位置)等操作。

滚动状态 横向 scrollLeft: 0
第 1 章开场介绍
第 2 章基础语法
第 3 章数据类型
第 4 章控制流程
第 5 章函数定义
第 6 章数组操作
第 7 章DOM 操作
第 8 章事件处理
第 9 章异步编程
第 10 章项目实战

练习目标 3:操作双向滚动容器

下方是一个 12 行 × 16 列的商品列表容器,同时具有纵向滚动条(右侧)和横向滚动条(底部)。Selenium 中可通过 driver.execute_script() 同时操作 scrollTopscrollLeft, 实现双向滚动、滚动到指定列(如「产地」列)、滚动到指定行(如 P007「机械手表」)、滚动到角落等操作。

商品列表 纵向scrollTop: 0 / 横向scrollLeft: 0
商品ID 商品名称 分类 价格 库存 评分 销量 上架时间 产地 标签 库存单位 供应商 保质期 促销 折扣率 操作
P001机械键盘外设¥8991,2344.85,6782024-01-15深圳热卖键鼠科技长期满减8.5折编辑 / 删除
P002无线鼠标外设¥2998,9014.612,3452024-02-20东莞新品精准科技长期第二件半价9折编辑 / 删除
P0034K显示器显示¥3,4995674.92,3452024-03-10苏州推荐显示科技3年-编辑 / 删除
P004游戏耳机音频¥7993,4564.78,9012024-03-25广州热卖音频科技长期满1000减2008折编辑 / 删除
P005电竞椅家具¥2,4991,2344.54,5672024-04-05佛山-办公家具长期-编辑 / 删除
P006智能手环穿戴¥29915,6784.423,4562024-04-18北京热卖穿戴科技1年99秒杀6.5折编辑 / 删除
P007机械手表穿戴¥3,9992344.95672024-05-01上海限量精工科技5年-编辑 / 删除
P008蓝牙音箱音频¥5995,6784.59,0122024-05-15深圳新品音频科技长期买二送一7.5折编辑 / 删除
P009摄像头外设¥4994,3214.36,7892024-06-01杭州-视觉科技长期-编辑 / 删除
P010打印机办公¥1,2998904.21,2342024-06-20南京推荐办公科技2年-编辑 / 删除
P011扫描仪办公¥7991,5674.42,3452024-07-05成都-办公科技2年-编辑 / 删除
P012投影仪显示¥4,9993454.87892024-07-22武汉热卖显示科技3年满5000减8008.2折编辑 / 删除

练习目标 4:操作 HTML5 视频

下方是一个 HTML5 视频播放器(5 秒 flower 视频,支持 play/pause/跳转/变速/静音等操作)。Selenium 中可通过 driver.execute_script("return arguments[0].play()", video_el) 等方式直接控制视频 DOM 元素。 练习目标:播放 / 暂停 / 跳转进度(后退 3s、前进 5s)/ 调整音量(静音切换)/ 变速播放(1.5x / 1.0x)。

00:00 / 00:05
🔊

定位后操作效果展示区域

本区域用于展示:通过 execute_script() 操作滚动条 / HTML5 视频后,返回的执行结果与属性状态变化。

当前尚无操作记录

请尝试:① 点击「滚动到顶/底/居中/左/右」 ② 点击视频播放/暂停/跳转/变速 ③ 点击章节卡片或水平滚动按钮。

操作日志(点击/输入后记录在此)

本日志仅展示效果,方便你在 Selenium 脚本里用 By.ID, "action-log" 读取后断言操作是否成功执行。

[等待操作] 暂无任何交互,欢迎开始练习……