【环境信息】

Python34+IE+windows2008

【说明】

1、对于日期控件,没有办法通过定位元素再直接传值的方式处理。可以采用执行JavaScript处理。

PS:还要去学学js怎么写,不然要用的时候就只有到处copy了。

【示例】

1、对于如下格式的日期控件需要用JS处理。

  

2、处理方式:通过driver.execute_script(js)执行。

 #问题消除时间,调用JS的当前时间
js = "function getCurrentDate() {" \
" var dtCur = new Date();" \
" var yearCur = dtCur.getFullYear();" \
" var monCur = dtCur.getMonth() + 1;" \
" var dayCur = dtCur.getDate();" \
" var hCur = dtCur.getHours();" \
" var mCur = dtCur.getMinutes();" \
" var sCur = dtCur.getSeconds();" \
" var timeCur = yearCur + \"-\" + (monCur < 10 ? \"0\" + monCur : monCur) + \"-\"" \
" + (dayCur < 10 ? \"0\" + dayCur : dayCur) + \" \" + (hCur < 10 ? \"0\" + hCur : hCur)" \
" + \":\" + (mCur < 10 ? \"0\" + mCur : mCur) + \":\" + (sCur < 10 ? \"0\" + sCur : sCur);" \
" return timeCur;" \
" }" \
"var value = document.getElementById(\"issueEliminatTime\");" \
"value.removeAttribute(\"readonly\");" \
"value.setAttribute(\"value\",getCurrentDate());"
self.driver.execute_script(js)

3、对于时间的JS处理方式。
时间格式为:2017-02-16 17:34:18

function getCurrentDate(count) {
var dtCur = new Date();
#该语句属于时间偏移量,比如要获取晚于当前时间2小时的时间,count可传入2
#当需要获取晚于当前一天的时间时,可以把getHours()更换成getDate().对于分、秒也是同理
dtCur.setHours(dtCur.getHours()+count);
var yearCur = dtCur.getFullYear();
var monCur = dtCur.getMonth()+1; var dayCur = dtCur.getDate();
var hCur = dtCur.getHours();
var mCur = dtCur.getMinutes();
var sCur = dtCur.getSeconds();
var timeCur = yearCur + "-" + (monCur < 10 ? "" + monCur : monCur) + "-"
+ (dayCur < 10 ? "" + dayCur : dayCur) + " " + (hCur < 10 ? "" + hCur : hCur)
+ ":" + (mCur < 10 ? "" + mCur : mCur) + ":" + (sCur < 10 ? "" + sCur : sCur);
return timeCur;
}

12 Python+selenium对日期控件进行处理(采用执行JS脚本)的更多相关文章

  1. python selenium 处理时间日期控件(十六)

    测试过程中经常遇到时间控件,需要我们来选择日期,一般处理时间控件通过层级定位来操作或者通过调用js来实现. 1.首先我们看一下如何通过层级定位来操作时间控件. 通过示例图可以看到,日期控件是无法输入日 ...

  2. python selenium 处理时间日期控件

    # -*- coding: utf-8 -*- from selenium import webdriverfrom time import sleep driver = webdriver.Fire ...

  3. selenium 处理日期控件

    今天遇到日期控件无法处理的问题,在北京-air的帮助下,看了下这篇blog http://www.cnblogs.com/Fskjb/archive/2011/10/27/2227111.html 根 ...

  4. selenium+python 处理只读日期控件的2种方法

    前言 有时候测试过程中会遇到日期控件场景,这时候需要特殊处理,下文以12306网站为例 1.处理方式 通常是通过js去除只读属性(2种方法),然后通过send_keys重新写值 from time i ...

  5. Selenium+java - 日期控件的处理

    前言 一般的日期控件都是input标签下弹出来的,设置日期使用selenium中的sendKeys 方法就可以解决. 但是我们也会碰到下面的时间日期控件(这个时候这个文本框是不允许我们输入时间的)如图 ...

  6. VS2010保存时控件验证(用onclientclick事件) js脚本

    控件按钮代码: asp:Button ID="btnSave" runat="server" OnClick="btnSave_Click" ...

  7. my97日期控件

    http://www.seabroad.cn/cq/datepick/demo.htm 但是由于某些原因,担心这个网站不稳定,所以复制一下 一. 简介 1. 简介 目前的版本是:4.0 Prerele ...

  8. jsp日期插件My97DatePicker 强大的日期控件 使用方便简单

    本文属转载(希望对编程爱好者有所帮助)详情请访问官方网站 http://www.my97.net/dp/index.asp 一. 简介 1. 简介 目前的版本是:4.7 2. 注意事项 My97Dat ...

  9. 日期控件My97DatePicker的使用

    一. 简介 1. 简介 目前的版本是:4.8 2. 注意事项 My97DatePicker目录是一个整体,不可破坏里面的目录结构,也不可对里面的文件改名,可以改目录名 My97DatePicker.h ...

随机推荐

  1. bupt summer training for 16 #4 ——数论

    https://vjudge.net/contest/173277#overview A.平方差公式后变为 n = (x + y)(x - y) 令 t = x - y ,变成 n = (t + 2x ...

  2. 洛谷 P2155 BZOJ 2186 codevs 2301 [SDOI2008]沙拉公主的困惑

    题目描述 大富翁国因为通货膨胀,以及假钞泛滥,政府决定推出一项新的政策:现有钞票编号范围为1到N的阶乘,但是,政府只发行编号与M!互质的钞票.房地产第一大户沙拉公主决定预测一下大富翁国现在所有真钞票的 ...

  3. 洛谷——P2676 超级书架

    https://www.luogu.org/problem/show?pid=2676#sub 题目描述 Farmer John最近为奶牛们的图书馆添置了一个巨大的书架,尽管它是如此的大,但它还是几乎 ...

  4. cogs 29. 公路建设

    29. 公路建设 ★   输入文件:road.in   输出文件:road.out   简单对比时间限制:1 s   内存限制:128 MB [问题描述] A 国是一个新兴的国家,有 N 个城市,分别 ...

  5. Oracle数据库点滴

    分页查询: SELECT * FROM (SELECT A.*, ROWNUM RN FROM (SELECT * FROM TABLE_NAME) A WHERE ROWNUM <= 40)W ...

  6. h5 播放器 -2

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...

  7. 【struts2】中method={1}具体解释

    我们在使用struts2的时候,有时候为了简化struts2的配置项而採用通配符的方式,例如以下代码: <action name="ajaxregister!*" class ...

  8. Java系列之JNDI

      简单介绍   JNDI(Java Naming and Directory Interface,Java命名和文件夹接口)是SUN公司提供的一种标准的Java命名系统接口.JNDI提供统一的cli ...

  9. Qt graphic item日记

    今天在用用graphic view 加入graphic item的时候要引入一个context menu,自然就要对context menu上的action进行slot处理.可是graphic ite ...

  10. monitor weblogic server ,Very simple to use, weblogic监控、巡检、故障简单小工具

        1. 开发了一个简单的监视weblogic执行情况的小程序.各位朋友下载下来试试,不用登陆console就能够知道server的执行状况,包含了jvm.线程.jdbc.状态jms等:另一个更简 ...