12 Python+selenium對日期控制項進行處理(採用執行JS指令碼)

來源:互聯網
上載者:User

標籤:dtc   image   cut   通過   處理   self   ges   exec   asc   

【環境資訊】

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;    }

 

12 Python+selenium對日期控制項進行處理(採用執行JS指令碼)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.