12 Python+selenium对日期控件进行处理(采用执行JS脚本)
【环境信息】
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脚本)的更多相关文章
- python selenium 处理时间日期控件(十六)
测试过程中经常遇到时间控件,需要我们来选择日期,一般处理时间控件通过层级定位来操作或者通过调用js来实现. 1.首先我们看一下如何通过层级定位来操作时间控件. 通过示例图可以看到,日期控件是无法输入日 ...
- python selenium 处理时间日期控件
# -*- coding: utf-8 -*- from selenium import webdriverfrom time import sleep driver = webdriver.Fire ...
- selenium 处理日期控件
今天遇到日期控件无法处理的问题,在北京-air的帮助下,看了下这篇blog http://www.cnblogs.com/Fskjb/archive/2011/10/27/2227111.html 根 ...
- selenium+python 处理只读日期控件的2种方法
前言 有时候测试过程中会遇到日期控件场景,这时候需要特殊处理,下文以12306网站为例 1.处理方式 通常是通过js去除只读属性(2种方法),然后通过send_keys重新写值 from time i ...
- Selenium+java - 日期控件的处理
前言 一般的日期控件都是input标签下弹出来的,设置日期使用selenium中的sendKeys 方法就可以解决. 但是我们也会碰到下面的时间日期控件(这个时候这个文本框是不允许我们输入时间的)如图 ...
- VS2010保存时控件验证(用onclientclick事件) js脚本
控件按钮代码: asp:Button ID="btnSave" runat="server" OnClick="btnSave_Click" ...
- my97日期控件
http://www.seabroad.cn/cq/datepick/demo.htm 但是由于某些原因,担心这个网站不稳定,所以复制一下 一. 简介 1. 简介 目前的版本是:4.0 Prerele ...
- jsp日期插件My97DatePicker 强大的日期控件 使用方便简单
本文属转载(希望对编程爱好者有所帮助)详情请访问官方网站 http://www.my97.net/dp/index.asp 一. 简介 1. 简介 目前的版本是:4.7 2. 注意事项 My97Dat ...
- 日期控件My97DatePicker的使用
一. 简介 1. 简介 目前的版本是:4.8 2. 注意事项 My97DatePicker目录是一个整体,不可破坏里面的目录结构,也不可对里面的文件改名,可以改目录名 My97DatePicker.h ...
随机推荐
- BUAA_OO_博客作业三
1 JML语言总结 1.1 JML语言的理论基础 JML(Java Modeling Language)是用于对Java程序进行规格化设计的一种表示语言.JML是一种行为接口规格语言(Behavi ...
- Java Web学习总结(23)——Distributed Configuration Management Platform(分布式配置管理平台)
专注于各种 分布式系统配置管理 的通用组件/通用平台, 提供统一的配置管理服务. 主要目标: 部署极其简单:同一个上线包,无须改动配置,即可在 多个环境中(RD/QA/PRODUCTION) 上线 部 ...
- sencha touch 2制作滑动DataView(无缝list)
Ext.define('App.view.Sections', { extend: 'Ext.dataview.DataView', xtype: 'sectionslist', id: 'mainl ...
- 机器学习10k均值
下面介绍无监督机器学习算法,与前面分类回归不一样的是,这个不知道目标变量是什么,这个问题解决的是我们从这些样本中,我们能发现什么. 这下面主要讲述了聚类算法,跟数据挖掘中的关联挖掘中的两个主要算法. ...
- MVC.Net:将Reponse Redirect从Get变为Post
在我们使用Response.Redirect命令的时候,有时候希望以POST的方式将参数传递过去.那么Redirect支持这种做法吗?答案是不支持... ======= 怎么办呢? ======= 我 ...
- HDU 4508
祼的完全背包问题 #include <iostream> #include <cstdio> #include <cstring> #include <alg ...
- D. Multiplication Table 二分查找
刚做这道题根本没想到二分,最关键是没想出来怎样统计在这个矩阵中比一个数小的有几个怎么算.造成自己想了好久最后看了别人的提示才做出来.哎.好久不做题太弱了 #include<iostream> ...
- [Node.js] Setup Local Configuration with Node.js Applications
Github To stop having to change configuration settings in production code and to stop secure informa ...
- mongodb mapreduce使用总结
文章来自本人个人博客: mongodb mapreduce使用总结 大家都知道,mongodb是一个非关系型数据库.也就是说.mongodb数据库中的每张表是独立存在的,表与表之间没有不论什么依赖 ...
- 2498 IncDec Sequence
2498 IncDec Sequence 时间限制: 1 s 空间限制: 64000 KB 题目等级 : 钻石 Diamond 题解 查看运行结果 题目描述 Description 给 ...