【环境信息】

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. springcloud(四):Eureka客户端公共组件打包方式

    ,      一.前言  各位大佬应该知道,在大型项目中都需要有数据传输层,一般项目都采用的是MVC结构,如果有10个表,则会创建10个实体类,在各个层之间应该使用实体类传递数据: 在微服架构中,也许 ...

  2. APK动态加载框架 https://github.com/singwhatiwanna/dynamic-load-apk

    https://github.com/singwhatiwanna/dynamic-load-apk

  3. JavaScript进阶----关于数字的方法,Math对象,日期对象,定时器,函数,for in

    关于数字的方法: <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  4. 【hdu 2036】改革春风吹满地

    [题目链接]:http://acm.hdu.edu.cn/showproblem.php?pid=2036 [题意] 中文题 [题解] 这里用的是叉积对应的求三角形的面积; 即 A×B=A*B*sin ...

  5. 详解Cookie、LocalStorage、SessionStorage

    不管是笔试还是面试相信大家都会经常遇到问Cookie.LocalStorage.SessionStorage 这三个不同的,什么不说先上一波图先: 针对他们大小之分应用场景也有不同: 因为考虑到每个 ...

  6. springCloud学习-服务的注册与发现(Eureka)

    1.小记 这段时间有空,把springcloud的知识整理一下,好记性不如烂笔头,也让自己对springcloud有个清晰的认识.此次的整理记录主要借鉴了这位大佬的博客 https://blog.cs ...

  7. hdu_1213_How Many Tables_201403091126

    How Many Tables Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...

  8. Android平台Airplay的实现方法

    Airplay属于局域网内异构设备之间分享多媒体数据的一种通信协议.Airplay设备有客户端和服务器之分,一般将小屏IOS设备实现为Airplay客户端,大屏幕设备实现为Airplay服务器.即iP ...

  9. iOS中UITextView的操作技巧

    刚才看了一篇textView实现placeholder的文章,有兴趣的同学们能够看下:__biz=MzA3NzM0NzkxMQ==&mid=211846438&idx=1&sn ...

  10. maven 的plugin 的使用

    mvn [plugin-name]:[goal-name] mvn compiler:compile 这里写的十分详细: https://www.tutorialspoint.com/maven/ma ...