zoukankan      html  css  js  c++  java
  • python3.6+selenium_键盘事件

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    # @Time : 2019/1/10 16:37
    # @File : unittest_test9_1.py
    
    '''键盘事件'''
    from selenium import webdriver
    from selenium.webdriver.common.by import By
    from selenium.webdriver.common.action_chains import ActionChains
    from selenium.webdriver.common.keys import Keys
    import unittest
    import time
    
    class HotkeyTest(unittest.TestCase):
        def setUp(self):
            self.driver = webdriver.Chrome()
            self.driver.maximize_window()
            self.driver.implicitly_wait(30)
            self.driver.get('https://www.baidu.com/?tn=78000241_11_hao_pg')
    
        def test1_hotkey(self):
            #联合key_down(Keys.SHIFT).send_keys('n').key_up(Keys.SHIFT)方法模拟按下“shift+n”,之后再提交
            #key_down(Keys.SHIFT)仅按下SHIFT键不释放
            #key_up(Keys.SHIFT)释放SHIFT
            #perform()提交以保存的动作
            ActionChains(self.driver).key_down(Keys.SHIFT).send_keys('n').key_up(Keys.SHIFT).perform()
    
    
        def test2_hotkey(self):
            # 输入搜索内容
            self.driver.find_element_by_name('wd').clear()
            self.driver.find_element_by_name('wd').send_keys('123q')
            time.sleep(2)
    
            # 删除多输入的q
            self.driver.find_element_by_name('wd').send_keys(Keys.BACKSPACE)
            time.sleep(2)
    
            #输入空格键
            self.driver.find_element_by_name('wd').send_keys(Keys.SPACE)
            time.sleep(2)
            self.driver.find_element_by_name('wd').send_keys('木头人')
            time.sleep(2)
    
            #Ctrl+a全选,Ctrl+x,Ctrl+v使用方法相同
            self.driver.find_element_by_name('wd').send_keys(Keys.CONTROL,'a')
            time.sleep(2)
    
        def tearDown(self):
            self.driver.quit()
    
    if __name__ == '__main__':
        unittest.main(verbosity=2)
  • 相关阅读:
    让windows10的右键菜单既显示传统cmd又显示powershell
    配置php环境的一个nginx.conf
    windows中启动和终止nginx的两个批处理
    WxWidgets笔记
    安装archlinux的linux命令记录
    window中的attrib命令
    docker中i的作用
    airflow中的两个参数
    sqlite数据库中为字段设置默认值为当前时间
    记oracle使用expdp将数据导出到asm报错
  • 原文地址:https://www.cnblogs.com/xiuxiu123456/p/10444329.html
Copyright © 2011-2022 走看看