美文网首页
selenium如何触发键盘操作

selenium如何触发键盘操作

作者: Judy警官 | 来源:发表于2019-06-19 09:46 被阅读0次

    引自:https://www.cnblogs.com/mengyu/p/6942584.html
    主要介绍键盘对元素的操作,实际过程中鼠标对元素的操作比键盘对元素的操作更经常使用,但是键盘对元素的操作也很重要,本节主要介绍一下键盘对元素的操作。

    selenium 提供了比较完整的键盘操作,在使用的模拟键盘操作之前需要我们导入from selenium.webdriver.common.keys import Keys即可,然后就可以来模拟键盘操作

    代#导入Keys 模块,然后我们看看Keys 模块定义了那些按键
    from selenium.webdriver.common.keys import Keys码块
    

    导入模块以后,我们可以看看具体的定义按键内容,我已经把经常使用的按键注释标记。

    NULL = '\ue000'
        CANCEL = '\ue001'  # ^break
        HELP = '\ue002'
        BACKSPACE = '\ue003'
        BACK_SPACE = BACKSPACE   #删除键
        TAB = '\ue004'   #TAB键
        CLEAR = '\ue005'  
        RETURN = '\ue006'
        ENTER = '\ue007'   #回车键
        SHIFT = '\ue008'   #Shift键
        LEFT_SHIFT = SHIFT
        CONTROL = '\ue009'
        LEFT_CONTROL = CONTROL   #Ctrl 键
        ALT = '\ue00a'           #Alt 键
        LEFT_ALT = ALT
        PAUSE = '\ue00b'
        ESCAPE = '\ue00c'   #ECS键
        SPACE = '\ue00d'    #空格键 
        PAGE_UP = '\ue00e'   #PgUp 键
        PAGE_DOWN = '\ue00f' #PgDwon 键
        END = '\ue010'    #END 键
        HOME = '\ue011'   #HOME 键
        LEFT = '\ue012'  #左键
        ARROW_LEFT = LEFT  
        UP = '\ue013'    #上键
        ARROW_UP = UP   
        RIGHT = '\ue014'
        ARROW_RIGHT = RIGHT  #右键
        DOWN = '\ue015'      #下键
        ARROW_DOWN = DOWN  
        INSERT = '\ue016'    #insert键 
        DELETE = '\ue017'    #del键
    
        SEMICOLON = '\ue018'  #';'键
        EQUALS = '\ue019'     #'='键
      #数字键盘
        NUMPAD0 = '\ue01a'  # number pad keys
        NUMPAD1 = '\ue01b'
        NUMPAD2 = '\ue01c'
        NUMPAD3 = '\ue01d'
        NUMPAD4 = '\ue01e'
        NUMPAD5 = '\ue01f'
        NUMPAD6 = '\ue020'
        NUMPAD7 = '\ue021'
        NUMPAD8 = '\ue022'
        NUMPAD9 = '\ue023'
        MULTIPLY = '\ue024' # '*' 键
        ADD = '\ue025'   # '+' 键
        SEPARATOR = '\ue026'  #','键
        SUBTRACT = '\ue027'  # '-' 键
        DECIMAL = '\ue028'   # '.'键
        DIVIDE = '\ue029'    #'/'键
    
        F1 = '\ue031'  # function  keys
        F2 = '\ue032'
        F3 = '\ue033'
        F4 = '\ue034'
        F5 = '\ue035'
        F6 = '\ue036'
        F7 = '\ue037'
        F8 = '\ue038'
        F9 = '\ue039'
        F10 = '\ue03a'
        F11 = '\ue03b'
        F12 = '\ue03c'
    
        META = '\ue03d'
        COMMAND = '\ue03d'
    

    看到模块中包含了很多的按键但是真正实际使用的按键不多,所以我下面对按键的操作将一些方法介绍一下,就不会对所有的按键详细介绍。

    1.首先我们了解下组合键,什么是组合键,比如我们经常使用的Ctrl + A ,Ctrl + C 等都是组合键。我们先看个例子

    在使用按键操作的时候我们需要借助一下send_keys()来模拟操作,Keys.CONTROL 也就是我们键盘上的Ctrl键,下面是几个常用的组合键。

    send_keys(Keys.CONTROL,'a')   #全选(Ctrl+A)

    send_keys(Keys.CONTROL,'c')   #复制(Ctrl+C)

    send_keys(Keys.CONTROL,'x')   #剪切(Ctrl+X)

    send_keys(Keys.CONTROL,'v')   #粘贴(Ctrl+V)

    我们下面使用Ctrl + A 来编写一个实例,看一下组合键的使用。

    #-*- coding:utf-8 -*-
    from selenium.webdriver.common.keys import Keys
    from selenium import webdriver
    import time
    driver = webdriver.Chrome()
    driver.get("http://www.baidu.com")
    driver.find_element_by_id('kw').send_keys('AAAAAAAAAAAA')
    driver.find_element_by_id("kw").send_keys(Keys.CONTROL,'a')  #注意这里组合键的输入。
    time.sleep(10)
    driver.quit()
    

    2.下面常用的键,这些常用键主要是非组合键,直接输入即可。

    回车键 Keys.ENTER
    删除键 Keys.BACK_SPACE
    空格键 Keys.SPACE
    制表键 Keys.TAB
    回退键 Keys.ESCAPE
    刷新键 Keys.F5
    下面我们选择一个常用的键,来编写一个例子,使用回车键来代替鼠标的click()键

    #-*- coding:utf-8 -*-
    from selenium.webdriver.common.keys import Keys
    from selenium import webdriver
    import time
    driver = webdriver.Chrome()
    driver.maximize_window()
    driver.get("http://cn.bing.com/")
    driver.find_element_by_id('sb_form_q').send_keys('selenium')
    driver.find_element_by_id("sb_form_go").send_keys(Keys.ENTER)   #通过回车键来代替鼠标的左键
    driver.quit()
    

    相关文章

      网友评论

          本文标题:selenium如何触发键盘操作

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