鼠标连点测试(连点器速度测试)

鼠标表示鼠标事件。鼠标操作是通过使用低级界面执行的,该界面允许我们向Web浏览器提供虚拟化的设备输入操作。 – 鼠标动作操作方法详细介绍如下: click_and_hold 移动到该元素,然后在给定元素的中间单击(不释放) importtime fromseleniumimportwebdriver fromselenium.webdriver.common.action_chainsimport…

鼠标表明鼠标事情。鼠标实际操作是根据应用低等界面实行的,该界面容许大家向Web电脑浏览器给予虚拟化技术的机器设备键入实际操作。

鼠标姿势操作步骤详解如下所示:

click_and_hold

挪动到该元素,随后在给定元素的正中间点击(不释放出来)

import time
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains


with webdriver.Chrome() as driver:
    driver.get(\'https://www.baidu.com/\')
    time.sleep(2)
    setting = driver.find_element_by_xpath(\'//*[@id=\"s-usersetting-top\" and text()=\"设定\"]\')
    ActionChains(driver).click_and_hold(setting).perform()
    time.sleep(5)

context_click

最先将鼠标挪动到元素的部位,随后在给定元素上实行前后文点击(右键单击)


import time
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains


with webdriver.Chrome() as driver:
    driver.get(\'https://www.runoob.com/python/python-tutorial.html\')
    time.sleep(2)
    setting = driver.find_element_by_xpath(\'//*[@rel=\"noopener noreferrer\" and text()=\"Python 3.X 版本号的实例教程\"]\')
    ActionChains(driver).context_click(setting).perform()
    time.sleep(5)

double_click

挪动到该元素,并在给定元素的正中间双击鼠标


import time
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains


with webdriver.Chrome() as driver:
    driver.get(\'https://www.runoob.com/python/python-tutorial.html\')
    time.sleep(2)
    setting = driver.find_element_by_xpath(\'//*[@rel=\"noopener noreferrer\" and text()=\"Python 3.X 版本号的实例教程\"]\')
    ActionChains(driver).double_click(setting).perform()
    time.sleep(5)

move_to_element

将鼠标移到元素的正中间。实行此使用时,该元素也会翻转到主视图中,再开展精准定位实际操作


import time
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains


with webdriver.Chrome() as driver:
    driver.get(\'https://www.baidu.com/\')
    setting = driver.find_element_by_xpath(\'//*[@id=\"s-usersetting-top\" and @name=\"tj_settingicon\"]\')
    ActionChains(driver).move_to_element(setting).perform()
    driver.find_element_by_xpath(\'//*[text()=\"检索设定\"]\').click()
    time.sleep(5)
    

move_by_offset

将鼠标从其所在位置(或0,0)挪动给定的偏移。假如座标在主视图对话框以外,则鼠标将最后在网页对话框以外


import time
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains


with webdriver.Chrome() as driver:
    driver.get(\'https://www.baidu.com/\')
    setting = driver.find_element_by_xpath(\'//*[@id=\"s-usersetting-top\" and @name=\"tj_settingicon\"]\')
    ActionChains(driver).move_to_element(setting).perform()
    time.sleep(5)
    xOffset = 1
    yOffset = 1
    webdriver.ActionChains(driver).move_by_offset(xOffset, yOffset).perform()
    driver.find_element_by_xpath(\'//*[text()=\"检索设定\"]\').click()
    time.sleep(5)
    

如咱们把xOffset和yOffset的值略微设定大一点,设置数值 100,便会报没有在标准的不正确:Message: move target out of bounds


/Users/lifeng/python-virtualenv/venv/bin/python3 /Users/lifeng/python-projects/test-python/selenium_script.py
Traceback (most recent call last):
  File \"/Users/lifeng/python-virtualenv/venv/lib/python3.9/site-packages/selenium/webdriver/remote/errorhandler.py\", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.MoveTargetOutOfBoundsException: Message: move target out of bounds
  (Session info: chrome=89.0.4389.82)
  

drag_and_drop

最先在源元素上点击并按着,随后运动到总体目标元素的部位,随后释放出来鼠标


import time
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains


with webdriver.Chrome() as driver:
    driver.get(\'https://www.baidu.com/\')
    setting = driver.find_element_by_xpath(\'//*[@id=\"s-usersetting-top\" and @name=\"tj_settingicon\"]\')
    setting_one = driver.find_element_by_xpath(\'//*[@id=\"s-usersetting-top\" and @name=\"tj_settingicon\"]\')
    ActionChains(driver).drag_and_drop(setting, setting_one).perform()
    driver.find_element_by_xpath(\'//*[text()=\"检索设定\"]\').click()
    time.sleep(5)
    

drag_and_drop时要传2个主要参数,传到第一个是源元素setting后按着,再点一下传到的总体目标元素setting_one后,随后再释放出来掉setting_one

drag_and_drop_by_offset

最先在源元素上点击并按着,挪到给定的偏移,随后释放出来鼠标。可对于短信验证码滑动解锁实际操作


import time
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.common.exceptions import UnexpectedAlertPresentException


with webdriver.Chrome() as driver:
    driver.get(\'https://mail.qq.com/\')
    time.sleep(2)
    form_ = driver.find_element_by_xpath(\'//*[@id=\"login_frame\"]\')   driver.switch_to.frame(form_)
    driver.find_element_by_xpath(\'//*[@id=\"u\"]\').click()
    driver.find_element_by_xpath(\'//*[@id=\"u\"]\').send_keys(\'16688888888\')
    driver.find_element_by_xpath(\'//*[@id=\"p\"]\').click()
    driver.find_element_by_xpath(\'//*[@id=\"p\"]\').send_keys(\'12345678999\')
    driver.find_element_by_xpath(\'//*[@id=\"login_button\"]\').click()
    time.sleep(2)
    code_iframe = driver.find_element_by_xpath(\'//*[@id=\"tcaptcha_iframe\"]\')
    driver.switch_to.frame(code_iframe)
    code_offset = driver.find_element_by_xpath(\'//*[@id=\"tcaptcha_drag_button\"]\')
    ActionChains(driver).drag_and_drop_by_offset(code_offset, 179, 0).perform()
    time.sleep(10)

官方网文本文档中的讲解是可以那样实际操作:


from selenium import webdriver


driver = webdriver.Chrome()
driver.get(\"https://crossbrowsertesting.github.io/drag-and-drop\")
sourceEle = driver.find_element(By.ID, \"draggable\")
targetEle  = driver.find_element(By.ID, \"droppable\")
targetEleXOffset = targetEle.location.get(\"x\")
targetEleYOffset = targetEle.location.get(\"y\")

webdriver.ActionChains(driver).drag_and_drop_by_offset(sourceEle, targetEleXOffset, targetEleYOffset).perform()
  

可是实际操作应用了location.get()的方式,运作后出错了:


/Users/lifeng/python-virtualenv/venv/bin/python3 /Users/lifeng/python-projects/test-python/selenium_script.py
Traceback (most recent call last):
  File \"/Users/lifeng/python-projects/test-python/selenium_script.py\", line 29, in <module>
    xOffset = code_offset.location(170)
TypeError: \'dict\' object is not callable

Process finished with exit code 1

release

将释放出来按住的鼠标左键


import time
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains


with webdriver.Chrome() as driver:
    driver.get(\'https://www.runoob.com/python/python-tutorial.html\')
    text_python = driver.find_element_by_xpath(\'//*[@rel=\"noopener noreferrer\" and text()=\"Python 3.X 版本号的实例教程\"]\')
    target_python = driver.find_element_by_xpath(\'//*[@rel=\"noopener noreferrer\" and text()=\"Python 3.X 版本号的实例教程\"]\')
    webdriver.ActionChains(driver).click_and_hold(text_python).move_to_element(target_python).perform()
    webdriver.ActionChains(driver).release().perform()
    time.sleep(1)
    

以上汇总也许能幫助到你,也许协助不了你,但還是期待能幫助到你

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

(14)
上一篇 2022年5月7日 上午11:14
下一篇 2022年5月7日 上午11:18

相关推荐

  • 活动方案怎么做吸引人,产品促销活动方案范文

    活动是一个快速拉升特定目标的手段。 一个好的的活动策划,应该得明确目标,找准姿势,创意包装,落实执行,复盘总结。 一、策划一个撩人的活动姿势 一个完整的活动策划方案,它包括活动目的、时间、形式、创意、宣传计划、投入产出、风险控制等等,尽可能的细化。 这次主要给大家分享的是活动目的、活动时间、活动形式、活动创意,把握好这四块,大体的方案就没问题了。 1.活动目的 (1)明确性。活动目的要明确。 (2…

    2022年7月2日
    540
  • 如何创建博客网站,五分钟帮你搭建属于自己的博客

    介绍 摘要:这是一篇有关如何使用GithubPages和Hexo搭建自己独立博客的详尽教程,里面介绍了如何使用和配置Hexo框架,如何将Hexo部署到自己的Github项目中,域名注册,以及域名的绑定,还有我在搭建自己博客过程中所遇到的各种困难。 入门门槛 必须耐得住折腾。刻苦的学习精神和耐心。 关于Github 一、Github的优点 GitHub是基于git实现的代码托管。git可能是目前最好…

    2022年10月8日
    520
  • 撑不起的亿航“空中的士”梦

    在无人机市场,相比于被人们熟知的大疆,亿航不算知名,但说到应用级无人机领域,提起载人无人驾驶飞行器,亿航完全可以与大疆相提并论

    2022年8月1日
    650
  • ipad电容笔推荐,推荐8款超级好用的电容笔

    如果你对电容笔的了解还停留在“用又粗又圆的橡胶头划屏幕”,那么准备好打开新世界的大门——8款最好用的电容笔,从外形设计到操作手感都堪称顶尖。不论你是为了会议记笔记还是专业绘画设计,在这篇文章里你都能找到你所要的。 在第一代iPad的发布会上,乔布斯为了证明多点触控技术的强大,以嘲笑的口吻问道:“我们需要手写笔吗?谁会需要手写笔?” 乔布斯去世后,他的苹果后人们不断“打脸”,从屏幕尺寸到机身形状,现…

    2022年9月21日
    600
  • 大疆云台怎么用(大疆云台使用教程及测评)

    现在记录文字心情已经落伍,朋友圈发照片已经算是延迟展现,越来越多的年轻人将热情和个性挥洒在社交网络上,直播已经成为全民喜爱的一种表达自我的方式。虽然说手机的摄像配置越来越好,拍照质量和修图软件越来越优,即使是高配置的手机,也不可解决拍摄视频时画面晃动,视频效果奇差的结局,普罗大众只是想记录下精彩的瞬间,不可能跟摄影师一样配置三脚架稳定器,或者是请一个摄影师贴身陪同啊? 国内无人机行业的领军企业==…

    2022年10月26日
    950
  • 怎样正确理财投资,五大经典理财方法推荐

    普通人如何选择投资理财,既然是普通人,意指大多数人,共有的特征是:没有足够风险承受力、没有专业知识、没有足够的时间,这和专业投资者区别还是很大的,那么对于“三个没有”的普通人来说,怎么样的投资理财方式才是较为合适的呢? 我认为可以从三个角度来进行配置: 第一,无风险易流动 无风险,主要是追求资金的安全,从这个角度来考虑的话,银行定期存款和国债是最佳的选择,这两种方式本金损失的可能性很小,以定期存款…

    2022年6月17日
    720
  • 苹果手机怎么备份短信,很简单只需简单几个步骤就搞定

    苹果手机短信怎么备份?手机短信是我们经常会用到的,有时候短信中会记录着一些重要的数据,如果重要的短信不小心被误删了怎么办呢?这时候我们就需要找回iPhone已删除的短信;但是小编想提醒大家的是,对于一些比较重要的短信等数据,我们最好经常备份,那么怎么备份苹果手机短信内容呢?下面我们就一起来分享一个简单的iPhone短信导出教程,有需要的小伙伴都来学习学习吧。 想要备份苹果手机短信数据,我们今天借助…

    2022年7月29日
    660
  • 自制幕布的最佳材料是什么,幕布和白墙区别大吗

    买了投影仪要不要买幕布是很多人纠结的问题,幕布和白墙的区别是什么?怎样的幕布性价比最高。要了解这些问题,首先要确定,幕布的优势在哪里? 一投影仪幕布的优势 1画面更平整 投影仪利用的是漫反射的成像原理,虽然这样有利于保护眼睛,但由于墙面的凹凸不平导致反射光线不集中,亮度也会大大削弱。投影仪幕布相对于白墙来说,表面更平整,反射光线聚合度更高,有利于亮度的集中。 2黑色边框有利于集中注意力 就像我们平…

    2022年6月14日
    880
  • 创业带动就业补贴政策有哪些,创业带动就业情况概述

    一、受理条件 为招用人员连续缴纳3个月以上社会保险并与招用人员签订1年以上劳动合同的初创企业,按初创企业招用人数给予创业带动就业补贴。补贴标准为招用3人(含3人)以下的按每人2000元给予补贴;招用3人以上的每增加1人给予3000元补贴,每户企业补贴总额最高不超过3万元。 二、办理流程 创业带动就业补贴补贴申请人在申报周期第1个月(即1月、3月、5月、7月、9月、11月)1-20日向区级补贴经办机…

    2022年5月20日
    820
  • dr股票是什么意思,一分钟带你了解dr股票

    在股市投资之时,我们经常可以看见不少股票前面都会加上DR、XR等前缀,在之前没有遇到这类股票,突然碰见确实会让人产生好奇,同时陌生的股票也会给我们的投资在成一定困扰,那么什么是dr股票?怎样来看待它呢?  DR股票简介 DR+股票是指当股票名称前出现DR字样时,表示当天是这只股票的除息、除权日,D是Dividend(股息)的缩写,R是Right(股权)的缩写。 有些上市公司分配时不仅派息而且送转红…

    2022年9月19日
    450

发表回复

登录后才能评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信