Python WebDriver API - 鼠标操作ActionChains

这篇具有很好参考价值的文章主要介绍了Python WebDriver API - 鼠标操作ActionChains。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

当调用ActionChains的方法时,不会立即执行,而是会将所有的操作按顺序存放在一个队列里,当调用perform()方法时,队列中的事件会依次执行

常用API

-》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) ——移动到距某个元素(左上角坐标)多少距离的位置

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

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

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

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

调用方法:

from selenium.webdriver.common.action_chains import ActionChains 

element=driver.find_element_by_xpath("xx")#定位到元素

ActionChains(driver).context_click(element).perform() #鼠标移动到元素,单击鼠标右键

有两种方法可以实现一个完整操作,链式写法和分步写法 

链式写法:

element1=driver.find_element_by_xpath("xx")

element2=driver.find_element_by_xpath("xx")

ActionChains(driver).move_to_element(element1).context_click(element2).perform()

分步写法:

element1=driver.find_element_by_xpath("xx")

element2=driver.find_element_by_xpath("xx")

actionChains = ActionChains(driver)

actionChains.move_to_element(element1)

actionChains.context_click(element2)

actionChains.perform()文章来源地址https://www.toymoban.com/news/detail-604188.html

到了这里,关于Python WebDriver API - 鼠标操作ActionChains的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python Selenium/WebDriver 操作手册新版

    写在前面:本文为个人整理手册,有错误的地方欢迎指正,参考链接较多,重点参考,侵权删 通俗的解释: 引用:Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,类型像我们玩游戏用的按键精灵,可以按指定的命令自动操作,不同是Selenium 可以直接运

    2024年02月01日
    浏览(50)
  • python 学习笔记(4)—— webdriver 自动化操作浏览器(基础操作)

    安装 web driver:         使用 driver 前,需要下载与浏览器版本相对应的 driver。如要在 Chrome 浏览器上操作,就要下载Chrome Driver。 几个常用浏览器的参考和下载地址: Edge Driver :https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/ Chrome Driver :https://sites.google.com/chromium.

    2024年02月09日
    浏览(47)
  • selenium+python自动化测试之使用webdriver操作浏览器的方法

    WebDriver简介 selenium从2.0开始集成了webdriver的API,提供了更简单,更简洁的编程接口。selenium webdriver的目标是提供一个设计良好的面向对象的API,提供了更好的支持进行web-app测试。从这篇博客开始,将学习使用如何使用python调用webdriver框架对浏览器进行一系列的操作 打开浏览

    2024年01月25日
    浏览(59)
  • Python + Selenium —— ActionChains动作链!

    当你需要执行复杂的操作时,比如将一个元素按住拖动到另一个元素上去,需要移动鼠标然后点击并按下键盘某个按键等等。 当然,在 Web 页面上,这种操作好像比较少。 但是,如果遇到了怎么办呢?这就需要用到 ActionChains 这个类啦。 ActionChains 提供了对动作的链式操作,

    2024年01月23日
    浏览(40)
  • WebDriver API

    入门Selecium自动化测试要学习两块内容: 1、unittest 2、WebDriver API WebDriver属于Selenium体系中设计出俩的操作浏览器的一套API 站在webdriver的角度,它针对多种编程语言都实现了一套API,所以它支持多种编程语言; 站在编程语言的角度,webdriver是python的一个用于实现web自动化的第三

    2024年02月22日
    浏览(24)
  • Python 使用 win32gui+win32api 通过鼠标获取句柄

    通过python实现某些win相关的自动化操作时,可能需要通过句柄操作. 获取的方法有很多.对此也有相关的可视化的软件实现类似的功能.比如: 通过vs工具获取窗体或者程序句柄 使用按键精灵获取句柄 使用某星小助手等 为此分享的当前的文章介绍的方法也是一种可视化的获取句柄

    2024年02月14日
    浏览(37)
  • python模拟鼠标键盘操作

    优点:可以进行简单的重复人为操作,也相当于实现了傻瓜式的自动化 缺点:也很明显,在进行程序运行时,你不能对鼠标和键盘进行使用(不然就会改变鼠标位置和输入内容导致程序报错),所以最好使用一台空闲的电脑。 很多软件打开都需要自己的运行环境,所以需要

    2024年02月11日
    浏览(38)
  • Python爬虫(4)-Selenium模拟鼠标操作

    在Selenium4.2以后的版本里面鼠标的操作方法都封装在了ActionChains中需要时直接取即可。 使用方法就是调用ActionChains然后传入你需要点击的按钮的位置即可 ActionChains(driver).double_click(f1).perform() perform()的意思就是执行所有ActionChains中的动作 具体的操作方法如下 鼠标单击就是直接

    2024年01月19日
    浏览(48)
  • python操作windows桌面实现鼠标、键盘操作,python之pyautogui库文档详解

    PyAutoGUI是一个纯Python的GUI自动化工具,其目的是可以用程序自动控制鼠标和键盘操作,多平台支持(Windows,OS X,Linux)。 源码地址: https://github.com/asweigart/pyautogui 官方文档: https://github.com/asweigart/pyautogui/blob/master/docs/simplified-chinese.ipynb PyAutoGUI可以模拟鼠标的移动、点击、拖

    2024年02月04日
    浏览(51)
  • selenium2(webdriver API)—软件测试

    定位元素的原则:不管用什么方式定位,这个元素必须全局唯一 如果存在id,一定全局唯一 name不一定全局唯一,存在并且全局唯一才可以定位 class name是类属性,存在并且全局唯一才可以定位 link text是链接内容,必须保证是一个可以访问的URL,必须是链接且链接全局唯一才

    2024年02月14日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包