zoukankan      html  css  js  c++  java
  • Selenium 模拟键盘操作

    一、导入键盘事件
    1.导入语句
    想使用selenium中的键盘事件,首先我们必须导入Keys包,需要注意的是包名称Keys首字母需要大写。Keys类中提供了几乎所有的键盘事件包括组合按键如 Ctrl+A、 Ctrl+C 等。

    from selenium.webdriver.common.keys import Keys 
    

    2.键盘事件
    下面是一些常用的键盘事件:

    Keys.BACK_SPACE 	# 回退键(BackSpace)
    Keys.TAB	# 制表键(Tab)
    Keys.ENTER		# 回车键(Enter)
    Keys.SHIFT		# 大小写转换键(Shift)
    Keys.CONTROL	# Control键(Ctrl)
    Keys.ALT	# ALT键(Alt)
    Keys.ESCAPE 	# 返回键(Esc)
    Keys.SPACE 		# 空格键(Space)
    Keys.PAGE_UP		# 翻页键上(Page Up)
    Keys.PAGE_DOWN 		# 翻页键下(Page Down)
    Keys.END		# 行尾键(End)
    Keys.HOME		# 行首键(Home)
    Keys.LEFT		# 方向键左(Left)
    Keys.UP		# 方向键上(Up)
    Keys.RIGHT		# 方向键右(Right)
    Keys.DOWN		# 方向键下(Down)
    Keys.INSERT		# 插入键(Insert)
    DELETE		# 删除键(Delete)
    NUMPAD0 ~ NUMPAD9		# 数字键1-9
    Keys.F5		# 刷新键
    F1 ~ F12		# F1 - F12键
    (Keys.CONTROL, 'a')		# 组合键Control+a,全选
    (Keys.CONTROL, 'c')		# 组合键Control+c,复制
    (Keys.CONTROL, 'x')		# 组合键Control+x,剪切
    (Keys.CONTROL, 'v')		# 组合键Control+v,粘贴
    

    举例说明

    # 在百度搜索框输入  python ,复制粘贴搜狗输入框进行搜索
    from selenium import webdriver
    from selenium.webdriver.common.keys import Keys
    from time import sleep
    
    driver = webdriver.Chrome()
    driver.get('http://www.baidu.com')
    driver.maximize_window()
    driver.find_element_by_css_selector('#kw').send_keys('python')
    sleep(2)
    driver.find_element_by_css_selector('#kw').send_keys(Keys.CONTROL, 'a')  # 全选
    driver.find_element_by_css_selector('#kw').send_keys(Keys.CONTROL, 'c')  # 复制
    driver.find_element_by_css_selector('#kw').send_keys(Keys.CONTROL, 'x')  # 剪切
    sleep(2)
    driver.get('http://www.sogou.com')
    driver.find_element_by_css_selector('.sec-input').send_keys(Keys.CONTROL, 'v')  # 粘贴
    sleep(2)
    driver.find_element_by_css_selector('#stb').click()
    sleep(2)
    driver.quit()
    
    如果您觉得本篇文章还不错,欢迎点赞,转发分享(转发请注明出处),感谢~~
  • 相关阅读:
    UnQLite简介
    .net中webconfig自定义配置
    webservice有关application/xop+xml的异常
    .NET4缓存过期策略摘录
    关于sea.js的笔记
    npm笔记和bower
    使用npm安装一些包失败了的看过来(npm国内镜像介绍)
    easyui的datagird动态设置当前页数
    Oracle中Merge into用法总结
    Oracle 12.1.0.2 对JSON的支持
  • 原文地址:https://www.cnblogs.com/feng0815/p/14762221.html
Copyright © 2011-2022 走看看