美文网首页
鼠标与键盘操作事件

鼠标与键盘操作事件

作者: 茶浅呀 | 来源:发表于2020-05-31 15:00 被阅读0次

鼠标事件

鼠标事件包含在ActionChains类中,导入时只需要:

from selenium.webdriver.common.action_chains import ActionChains

导入类即可:

常用的方法有:

  • context_click() ——右键单击

  • double_click() ——双击

  • drag_and_drop(鼠标按下的元素,鼠标释放的元素) ——拖动

  • move_to_element() ——鼠标悬停在一个元素上

  • click_and_hold() ——按下鼠标左键在一个元素上

需要注意的是,这些ActionChains类中对鼠标的操作,在执行的时候需要加perform才可以执行。

来一段代码,大家看一下效果:

# coding: utf-8
from selenium import webdriver
from time import sleep
from selenium.webdriver.common.action_chains import ActionChainsoptions = webdriver.ChromeOptions()
options.add_argument('disable-infobars')
driver = webdriver.Chrome(chrome_options=options)
# driver = webdriver.Chrome()
driver.get("http://www.jrj.com.cn/")
sleep(2)
source = driver.find_element_by_xpath(".//*[@id='appherw']")
ActionChains(driver).move_to_element(source).perform()

额,不得不说,我踩到坑了……大家也发现了,我用的是chrome浏览器,没错,因为Firefox就是拖动不了……我百度了一大圈也没找到原因。只能和大家说一下我的chrome版本了;此外如果大家不像我那样写而是直接webdriver.Chrom(),运行是没问题的,但是chrome打开时会显示一行字——“chrome正受到自动测试软件的控制”。用chrome的话就得安装chromedriver了。

上面的代码运行后会发现下面显示出了二维码——这正是鼠标移动上去时候的响应。
再提醒大家一遍,鼠标的操作要有.perform()哦。

键盘事件

键盘事件,就是键盘上的一些操作,比如Ctrl +C,Ctrl+V,Ctrl+X等。
对键盘的操作需要导入另一个键盘的库:

from selenium.webdriver.common.keys import Keys

举个例子,你要在搜索框输入“自动化测试”,但是现在又想搜“自动化测”,就是删掉一个字,我们知道,就是摁一下键盘上的Backspace键就可以了,这时候你就需要键盘操作了:

driver.find_element_by_xpath("xpath的定位").send_keys(Keys.BACK_SPACE)

如果对软件测试、接口测试、自动化测试、面试经验交流。感兴趣可以加软件测试交流:1085991341,还会有同行一起技术交流。
这样就可以了。
接下来来段代码,大家就记住了:

# coding: utf-8
from selenium import webdriver
from time import sleep
from selenium.webdriver.common.keys import Keys


driver = webdriver.Firefox()
driver.get("http://www.baidu.com")
# 输入框输入内容
driver.find_element_by_id("kw").send_keys("selenium")
sleep(3)
# 删除多输入的一个 m
driver.find_element_by_id("kw").send_keys(Keys.BACK_SPACE)
sleep(3)
# 继续输入“教程”
driver.find_element_by_id("kw").send_keys(u"教程")
sleep(3)
# ctrl+a 全选输入框内容
driver.find_element_by_id("kw").send_keys(Keys.CONTROL,'a')
sleep(3)
# ctrl+x 剪切输入框内容
driver.find_element_by_id("kw").send_keys(Keys.CONTROL,'x')
sleep(3)
# 输入框重新输入内容,搜索
driver.find_element_by_id("kw").send_keys(Keys.CONTROL,'v')
sleep(3)
# 通过回车键盘来代替点击操作
driver.find_element_by_id("su").send_keys(Keys.ENTER)
sleep(3)
driver.quit()

了解以上内容就差不多了,如果遇到新的需要只需要百度一下,要知道我们不可能把所有东西都记在脑子里的,只要入门了,知道怎么百度了,那目的就算是达到了,当然记住的话就更好了。
以上内容希望对你有帮助,有被帮助到的朋友欢迎点赞,评论。

相关文章

  • python3+selenium实现Web自动化3:鼠标操作和键

    一、Selenium之鼠标操作和键盘操作 1.鼠标事件在webdriver中,鼠标操作的方法封装在 ActionC...

  • day11 Pygame Ⅱ 事件处理2018-07-30

    一、Pygame中的事件 鼠标事件和键盘事件   监测鼠标、键盘事件 鼠标事件 键盘事件   二、鼠标事件的应用1...

  • WPF之路-键盘与鼠标事件

    键盘事件 事件类型分为以下几个类型 生命周期事件:在元素加载与卸载的时候发生 鼠标事件:鼠标动作 键盘事件:键盘动...

  • 鼠标与键盘操作事件

    鼠标事件 鼠标事件包含在ActionChains类中,导入时只需要: 导入类即可: 常用的方法有: context...

  • 04-Three.js 操作控件

    鼠标操作控件 OrbitControls.js 方法一,使用监听鼠标、键盘事件 方法二requestAnimati...

  • js操作页面三步骤

    js操作页面三步骤 js事件 鼠标事件 文档事件 键盘事件 表单事件 事件对象 js操作内容 js操作样式 页面转...

  • 事件的分类

    事件分为鼠标事件,键盘事件,表单事件以及移动端事件,今天主要介绍一下鼠标键盘以及表单事件 鼠标事件 redDiv....

  • 微信小程序开发——学习笔记(二)

    微信小程序基本概念——事件 不同终端的操作方法 PC端操作:键盘、鼠标 移动端操作:手指 事件类型介绍 事件类型解...

  • July 30-day13-Python中Pygame

    触碰事件 有鼠标、键盘等等 对鼠标事件的应用 鼠标点击事件的应用(对鼠标的拖拽) 字体动画的效果 键盘事件的应用 ...

  • Day_11 pygame

    pygame事件,鼠标事件与键盘事件 鼠标事件的应用 结果:点击click随机生成一个球 click按钮内不产生...

网友评论

      本文标题:鼠标与键盘操作事件

      本文链接:https://www.haomeiwen.com/subject/wwolzhtx.html