今晚不想加班,于是赶紧回来看看书,不知道今天怎么就突然特别想玩文明五,但是又要克制自己咯,所以还是看看书吧,干的事情有:

1.下了selenium的小工具:FireBug/FirePath。

2.确定了看书顺序,我觉得难度低点开始比较好,所以我还是先看基于PYTHON的selenium,另一本书再看把,觉得自己能力还是太弱,还是从友好的先上手,虽然之前也看了BY_ID的一些用法,但是真的实际做起来弱鸡一个。

3.学习了selenium 键盘事件模拟,其实在这之前把许久没有打开的虚拟机打开了一次。。我连MAN都忘了,我的心很累。

还是言归正传把,学点东西就说出来。还是调用键盘的API,我把东西先说出来

send_keys(Keys.BACK_SPACE)                   删除键

中间插一句,今天这个大小写搞的我灰头苦脸的,改了好几次脚本才跑起来。

send_keys(Keys.SPACE)                              空格键

send_keys(Keys.TAB)                                   制表键

send_keys(Keys.ESPACE)                            回退键

send_keys(Keys.ENTER)                              回车键

send_keys(Keys.CONTROL,'a')                     全选

send_keys(Keys.CONTROL,'c')                     复制

send_keys(Keys.CONTROL,'x')                     剪切

send_keys(Keys.CONTROL,'v')                     粘贴

send_keys(Keys.F1)                                      F1

个人觉得键盘事件还是挺实用的,如果你熟悉键盘操作,可以干很多事情,很方便,下面是我的代码,基本把上面的都用了一遍。

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys

driver=webdriver.Firefox()

driver.get("http://www.baidu.com")
driver.find_element_by_id("kw").send_keys("seleniumm")
driver.find_element_by_id("kw").send_keys(Keys.BACK_SPACE)

driver.find_element_by_id("kw").send_keys(Keys.SPACE)
driver.find_element_by_id("kw").send_keys("教程")

driver.find_element_by_id("kw").send_keys(Keys.CONTROL,'a')
driver.find_element_by_id("kw").send_keys(Keys.CONTROL,'x')
driver.find_element_by_id("kw").send_keys(Keys.CONTROL,'v')
driver.find_element_by_id("kw").send_keys(Keys.ENTER)

selenium:2.selenium 键盘事件模拟的更多相关文章

  1. Python+selenium鼠标、键盘事件

    鼠标操作 现在的Web产品提供了丰富的鼠标交互方式,例如鼠标右击.双击.悬停.甚至是鼠标拖动等功能,在Webdriver中,将这些关于鼠标操作的方法封装在ActionChains类提供. 1.鼠标右击 ...

  2. selenium 键盘事件 模拟ctrl+v 然后键盘点击回车键

    #windows下执行 import win32api,win32con,win32clipboard as w #获取剪切板内容 def get_text(): w.OpenClipboard() ...

  3. selenium 3.0 键盘事件 +强制结束chromedriver进程代码

    selenium自动化测试常常用到键盘操作,一下是键盘操作的详细操作,和部分代码.截图来自于虫师的自动化相关书籍. public static void main(String[] args) thr ...

  4. Selenium WebDriver-通过键盘事件操作浏览器

    #encoding=utf-8 import unittest import time import chardet from selenium import webdriver class Visi ...

  5. Selenium WebDriver-操作键盘事件

    # 注意: !!!操作操作系统的按键,需要先装pywin32,然后通过交互模式import win32api和import win32con判断是否安装成功,需要重启下cmd进入交互模式# 下载链接: ...

  6. 【自动化测试】Selenium常用的键盘事件

    send_keys(Keys.BACK_SPACE) 删除键(BackSpace)send_keys(Keys.SPACE) 空格键(Space)send_keys(Keys.TAB) 制表键(Tab ...

  7. Selenium(五)鼠标和键盘事件

    1.模拟鼠标找到大分类下的子分类.以网易严选为例. 如果直接找到  坚果炒货 这个元素,然后点击它来实现跳转,是会报错的. 模拟鼠标停留--点击行为:  页面已成功跳转 2.键盘事件 模拟搜索操作: ...

  8. selenium 基本的键盘方法

    今晚不想加班,于是赶紧回来看看书: 1.下了selenium的小工具:FireBug/FirePath. 2.确定了看书顺序,我觉得难度低点开始比较好,所以我还是先看基于Python的selenium ...

  9. JS模拟键盘事件 -- 原理及小例子

    提问: 键盘默认事件,比如tab切换,alt+f4关闭,ctrl+t新建等,如果不想通过键盘而是一些按钮点击来触发这些功能,该咋办呢? 例子: 先以tab为例上一个小例子: <!DOCTYPE ...

随机推荐

  1. js模拟栈---汉诺塔

    var Stack = (function(){ var items = new WeakMap(); //先入后出,后入先出 class Stack{ constructor(){ items.se ...

  2. SQL Server2008 R2 数据库镜像实施手册(双机)SQL Server2014同样适用

    这篇文章主要介绍了SQL Server2008 R2 数据库镜像实施手册(双机)SQL Server2014同样适用,需要的朋友可以参考下 一.配置主备机 1. 服务器基本信息 主机名称为:HOST_ ...

  3. 要求根据RandomStr.java:使用类型转换生成六位验证字符串,示例程序每次运 行时,都会生成不同的字符串。

    1.程序设计思想验证码 ①定义一个字符串变量来保存随机生成的. ②利用循环产生六位随机数,在产生每一位时将其转换为char类型并写在字符串后面. ③利用对话框显示生成的验证码,并提示用户输入验证码. ...

  4. python class 1

    //test.py class Employee: 'all employee' empCount = 0 def __init__(self, name, salary): self.name = ...

  5. 关于fullpage.js 和animate.css制作全屏简单大方的首页

    附上源码: html <!DOCTYPE html><html lang="en"><head> <meta charset=" ...

  6. 12月centos单词

    ---恢复内容开始--- UNreachable:adj.(network server unreachable) 不能达到的; 及不到的; 取不到的; 不能得到的; rsync: rsync [re ...

  7. css3d旋转

    一.包裹层添加 -webkit-perspective: 800px; -moz-perspective: 800px; 使子元素获得3D效果支持   二.自持子元素需支持3D效果 -webkit-t ...

  8. Unity shader学习之Alpha Test的阴影

    Alpha Test的阴影, shader如下: // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClip ...

  9. tetrahedron (公式)

    我是直接搬运了某大佬的代码,毕竟我不清楚如何计算这个东西. 其中四点共面的求法就是体积为0,然后圆心和半径就公式了. #include<cstdio> #include<iostre ...

  10. mysql批量插入,批量更新

    进行批量操作的时候,一定要事先判断数组非空 <insert id="batchInsert"parameterType="java.util.List"& ...