• 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;
        }
  • 相关阅读:
    vue.js打包后,接口安全问题
    PHP开发api接口安全验证
    DOS命令操作 规格严格
    IIS 规格严格
    Swing语法高亮 规格严格
    Jetty 规格严格
    How to avoid “Illegal type in constant pool 规格严格
    数据库表产生类 规格严格
    利用Java编写简单IIS日志清理工具 规格严格
    语法高亮 规格严格
  • 原文地址:https://www.cnblogs.com/catleer/p/6407015.html
Copyright © 2020-2023  润新知