zoukankan      html  css  js  c++  java
  • 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 ? "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;
        }
  • 相关阅读:
    C#中NULL,"",DBNULL,String.Empty,Convert.IsDBNull()的区别
    vs 扩展和更新下载的插件在什么位置呢,看看吧,哈哈
    全面了解 Nginx 主要应用场景
    Nginx配置详解
    ulimit -n 修改
    mysql系列十一、mysql优化笔记:表设计、sql优化、配置优化
    java.net.UnknownHostException 异常处理
    Oracle 11G在用EXP 导出时,空表不能导出解决
    expdp和impdp导入和导出数据
    CentOS6.5运行yum报错:No module named yum
  • 原文地址:https://www.cnblogs.com/catleer/p/6407015.html
Copyright © 2011-2022 走看看