python3 selenium ActionChains用法

python3 selenium ActionChains用法下面介绍一下 ActionChains 用 selenium 做自动化 有时候会遇到需要模拟鼠标操作才能进行的情况 比如单击 双击 点击鼠标右键 拖拽等等 而 selenium 给我们提供了一个类来处理这类事件 ActionChains nbsp nbsp nbsp selenium webdriver common action chains ActionChains driver 这个类基本能够满足我们所有对鼠标

下面介绍一下ActionChains:

用selenium做自动化,有时候会遇到需要模拟鼠标操作才能进行的情况,比如单击、双击、点击鼠标右键、拖拽等等。而selenium给我们提供了一个类来处理这类事件——ActionChains

    selenium.webdriver.common.action_chains.ActionChains(driver)

这个类基本能够满足我们所有对鼠标操作的需求。

1.ActionChains基本用法

    首先需要了解ActionChains的执行原理,当你调用ActionChains的方法时,不会立即执行,而是会将所有的操作按顺序存放在一个队列里,当你调用perform()方法时,队列中的时间会依次执行。

    这种情况下我们可以有两种调用方法:

    链式写法

    click(on_element=None) ——单击鼠标左键

    click_and_hold(on_element=None) ——点击鼠标左键,不松开

    context_click(on_element=None) ——点击鼠标右键

    double_click(on_element=None) ——双击鼠标左键

    drag_and_drop(source, target) ——拖拽到某个元素然后松开

    drag_and_drop_by_offset(source, xoffset, yoffset) ——拖拽到某个坐标然后松开

    key_down(value, element=None) ——按下某个键盘上的键

    key_up(value, element=None) ——松开某个键

    move_by_offset(xoffset, yoffset) ——鼠标从当前位置移动到某个坐标

    move_to_element(to_element) ——鼠标移动到某个元素

    move_to_element_with_offset(to_element, xoffset, yoffset) ——移动到距某个元素(左上角坐标)多少距离的位置

    perform() ——执行链中的所有动作

    release(on_element=None) ——在某个元素位置松开鼠标左键

    send_keys(*keys_to_send) ——发送某个键到当前焦点的元素

    send_keys_to_element(element, *keys_to_send) ——发送某个键到指定元素

    

3.代码示例

    1. 点击操作

        代码:

    

    代码:

4.按键

    模拟按键有多种方法,能用win32api来实现,能用SendKeys来实现,也可以用selenium的WebElement对象的send_keys()方法来实现,这里ActionChains类也提供了几个模拟按键的方法。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/231996.html原文链接:https://javaforall.net

(0)
上一篇 2025年11月8日 下午1:01
下一篇 2025年11月8日 下午1:22


相关推荐

  • n8n 错误处理指南:打造稳健可靠的自动化工作流

    n8n 错误处理指南:打造稳健可靠的自动化工作流

    2026年3月15日
    3
  • 用flash做古诗动画_Flash制作跟我学 用遮罩技术制作古诗动画-FLASH课件制作(FLASH课件制作教程)-flash课件吧(湖北金鹰)…

    用flash做古诗动画_Flash制作跟我学 用遮罩技术制作古诗动画-FLASH课件制作(FLASH课件制作教程)-flash课件吧(湖北金鹰)…Flash制作跟我学用遮罩技术制作古诗动画提示:遮罩—使用遮罩图层可以让Flash设计者有选择地显示图层的某些部分,应用遮罩需要创建一个图层成为遮罩的图层,而它下面的图层即成为被遮盖的图层。1准备一幅配合诗词意境的图片作为背景(古色古香的水墨画当属首选),根据图片的尺寸设计Flash文件的大小(本文创建尺寸为333×438像素,背景为蓝色)。打开“文件”菜单,选择“导入”→“导入到舞台”命令把背…

    2022年5月1日
    40
  • 大数据:数据采集平台之Scribe[通俗易懂]

    大数据:数据采集平台之Scribe[通俗易懂]大数据:数据采集平台之ScribeGitHub地址:https://github.com/facebookarchive/scribeScribe是Facebook开发的数据(日志)收集系统。已经多年不维护。部署架构如下:参考:https://mp.weixin.qq.com/s/emQ_94T0_Hw3ywQc0-4Dtg…

    2022年5月18日
    44
  • Swift之使用KeyPaths创建自定义查询函数

    Swift之使用KeyPaths创建自定义查询函数一 前言作为一个相当严格 静态编译的语言 Swift 可能不会在语法自定义方面提供许多渠道 但这实际上确正好相反 通过如何在 Swift 中自定义操作符 Swift 中 KeyPaths 的能力 函数 结果构建器等功能 我们有很多机会为特定用例进行调整 Swift 的语法 当然 无可争议的是 任何类型的语法定制都应小心谨慎地 因为如果不小心 非标准语法也可能很容易成为混乱的源泉 但是 在某些情况下 权衡可能是值得的 并且可以易于制作类似 DSL 这种可以帮助我们使代码更清晰的语法 二 否定布尔值的

    2026年3月17日
    2
  • Pytest(1)安装与入门[通俗易懂]

    Pytest(1)安装与入门[通俗易懂]pytest介绍pytest是python的一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更简洁,效率更高。根据pytest的官方网站介绍,它

    2022年7月29日
    6
  • 世界名著100部简介百度百科_20部必读的哲学巨著

    世界名著100部简介百度百科_20部必读的哲学巨著01、傲慢与偏见      02、孤星血泪      03、雾都孤儿        04、唐·吉诃德  05、安娜·卡列尼娜      06、飘      07、简·爱       08、悲惨世界  09、茶花女      10、基督山恩仇记      11、童年         12、这里的黎明静悄悄  13、钢铁是怎样炼成的  14、战争与和平        15、西线

    2025年11月2日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号