鼠标事件

鼠标事件包含在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()

了解以上内容就差不多了,如果遇到新的需要只需要百度一下,要知道我们不可能把所有东西都记在脑子里的,只要入门了,知道怎么百度了,那目的就算是达到了,当然记住的话就更好了。

以上内容希望对你有帮助,有被帮助到的朋友欢迎点赞,评论。

python实现鼠标键盘事件_鼠标与键盘操作事件相关推荐

  1. java响应鼠标滚轮事件_鼠标滚轮事件MouseWheel

    其实在大多数浏览器(IE6, IE7, IE8, Opera 10+, Safari 5+,Chrome)中,都提供了 "mousewheel" 事件.但杯具的是 Firefox ...

  2. python鼠标移动轨迹_鼠标的另一种选择,肯辛通轨迹球能否改变固有的使用习惯?...

    [引言] 鼠标,作为电脑甚至是现在Pad的外接输入设备,其地位从1964年雏形诞生的那一刻起便从未被撼动,哪怕是thinkpad的小红点以及外接触摸板的出现.鼠标最早只是一个装有两个滚轮(是圆盘型滚轮 ...

  3. cocos判断鼠标点击_鼠标左键失灵怎么办?鼠标左键不灵敏的修复方法

    鼠标用久了之后,就有可能会出现鼠标左键失灵或者不灵敏的情况,这要怎么修复呢?鼠标左键不灵敏该如何解决?本文就给大家详细介绍鼠标用久了后左键不灵敏或失灵的解决方法. 解决方法: 1.比如鼠标右键失灵,可 ...

  4. mac数字键盘错乱_苹果手机数字键盘 苹果电脑键盘打不出数字解决办法

    苹果电脑跟苹果手机一样,是电子设备中的佼佼者.但也因为其好看的外表和出色的性能受到很多人的喜爱.那么苹果电脑键盘打不出数字解决办法有什么呢?下面就让afU123小编来告诉大家吧,欢迎阅读. 进行基本设 ...

  5. mac数字键盘错乱_苹果笔记本数字键盘打不出数字怎么办_苹果笔记本按不出数字如何解决-win7之家...

    苹果笔记本是款深受用户们喜欢的电脑,独特的个性个强大的功能深受用户们喜欢,不过近日有用户在使用苹果笔记本的时候,发现数字键盘打不出数字,这让用户们很是困扰,该怎么办呢,针对这个问题,本文就告诉大家苹果 ...

  6. h5如何动态获取键盘高度_动态获取键盘高度

    //在遇到有输入的情况下.由于现在键盘的高度是动态变化的.中文输入与英文输入时高度不同.所以输入框的位置也要做出相应的变化 #pragma mark - keyboardHight -(void)vi ...

  7. onbeforeunload 拿不到鼠标事件_鼠标、键盘卖不动了?这个“大学生最爱”的品牌业绩下滑后出大招了...

    业绩连年下滑,让生产鼠标键盘的雷柏科技(002577.SZ)决定转型当包租公了.11月26日晚间,雷柏科技发布了多份公告,核心内容在于:公司拟从自产转型为走"代工"路线.在上述路线 ...

  8. plsql 设置鼠标行执行_如何制作键盘鼠标产品质量合格证

    鼠标前盘属于办公用品套装,一般会一起销售,但是也不排除分开销售,无论是哪种方式键盘鼠标在生产销售时都需要携带对应产品质量合格证,对产品进行简单的说明,更能保障消费者的权益.那么如何制作产品质量合格证呢 ...

  9. vba模拟鼠标点击_鼠标键盘模拟大师下载_鼠标键盘模拟大师免费版官方下载6.2...

    鼠标键盘模拟大师是目前国内唯一一款将鼠标自动点击.键盘自动输入.网页自动刷新和自动切换IP地址等功能完美结合与一体的鼠标键盘动作模拟软件,可以实现桌面及游戏的自动点击和按键点击等功能,有需要的小伙伴快 ...

  10. python scipy库函数solve用法_如何在中使用事件scipy.integrate.solve_ivp

    我不确定事件处理是否scipy.integrate.solve_ivp工作正常.在下面的例子中,我对一个导数进行积分,得到一个三次多项式,它的根在x=-6,x=-2和x=2.我设置了一个事件函数,返回 ...

最新文章

  1. 解释@Component @Controller @Service @Repository
  2. EfficientNetV2震撼发布!87.3%准确率!模型更小,训练更快!谷歌大脑新作
  3. 使用google colab运行RNN网络代码报告错误ValueError: Object arrays cannot be loaded when allow_pickle=False
  4. OSError: Could not find kaggle.json
  5. 201409-5 拼图
  6. linux重装eclipse_Linux环境安装Eclipse工具开发
  7. 13.Data Leakage
  8. linux python测试程序,linux下测试python程序执行时间
  9. 俄罗斯方块c语言代码 vc 6.0,VC++6.0俄罗斯方块代码
  10. 加壳后软件报毒解决办法
  11. 【连载】穿越计算机的迷雾——读书笔记
  12. IT经理人:提高团队工作效率的11个方法
  13. 考研高数——牛顿-莱布尼茨公式(N-L公式)的证明
  14. 怎样创建一个计算机用户,如何创建域用户账户
  15. Python集合运算
  16. 夜神模拟器adb查看log
  17. dataX和dataX-Web使用总结
  18. Object is possibly undefined
  19. idea出现 淇℃伅 乱码
  20. Python 学习之列表推导式

热门文章

  1. 如何养成良好的生活习惯 — 饮食、睡眠、运动
  2. android 沙盒双开 微信,微信双开回来了,还不会被封号
  3. com组件调用regsvr32的时候调试DllRegisterServer时候遇到的问题
  4. 测量法的三种测量方法计算机,圆度的测量方法有哪几种
  5. The Book of Qt4 : The Art of Building Qt Application 阅读笔记
  6. 解决小米wifi在windows10无法创建问题
  7. 电子数字计算机和电子模拟计算机区别,电子数字计算机和电子模拟计算机的区别在哪里?...
  8. mysql导入shapefile
  9. 启科量子国产量子编程软件项目或将启动开源计划
  10. CNZZ、51啦、量子恒道、谷歌网站流量统计比较