python selenium 기반 마우스 드래그 기능 구현

1. html 파일 준비


먼저 우리는 마우스가 미끄러지는 html 파일을 준비해서 마우스가 미끄러지는 효과를 보여야 한다. 우리의 html 파일을 자신의 서버에 놓아야 한다는 것을 주의해야 한다.
이렇게 해야만 우리는selenium을 통해 검증할 수 있다.html 파일은 다음과 같습니다.

<html>
<head>
  <meta charset="utf-8" />
  <style>
    body {
  margin: 0;
  padding: 0;
}

input{
  appearance:none;
  -moz-appearance:none;
  -webkit-appearance:none;
  background: none;
  border:none;
}

.wrap{
  margin: 200px 0 0 200px;
}

.box {
  position: relative;
  width: 200px;
  height: 30px;
  border-radius: 20px;
  background: #686B69;
  line-height: 30px;
  overflow: hidden;
  margin-bottom: 40px;
  color: #fff;
  font-size: 12px;
}

.btn {
  position: absolute;
  top: 0;
  left: 0;
  height: 30px;
  width: 30px;
  background: #0c7;
  border-radius: 20px;
  text-align: center;
}

.tips {
  text-align: center;
}

#submit{
  line-height: 28px;
  border-radius: 3px;
  background: #0c7;
  width: 200px;
  text-align: center;
  color: #fff;
}
  </style>
</head>
<body>
<div class="wrap">
  <div class="box">
    <div class="btn" id="dragEle"></div>
    <div class="tips">>> <<</div>
  </div>
 <input type="button" value=" " id="submit" />
</div>
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script type="text/javascript">
  function DragValidate (dargEle,msgEle){
    var dragging = false;// 
    var iX;
    dargEle.mousedown(function(e) {
      msgEle.text("");
      dragging = true;
      iX = e.clientX; // 
    });
    $(document).mousemove(function(e) {
      if (dragging) {
        var e = e || window.event;
        var oX = e.clientX - iX;
        if(oX < 30){
          return false;
        };
        if(oX >= 210){// +10
          oX = 200;
          return false;
        };
        dargEle.width(oX + "px");
        //console.log(oX);
        return false;
      };
    });
    $(document).mouseup(function(e) {
      var width = dargEle.width();
      if(width < 200){
        //console.log(width);
        dargEle.width("30px");
        msgEle.text(">> <<");
      }else{
        dargEle.attr("validate","true").text(" !").unbind("mousedown");
      };
      dragging = false;
    });
  };

  DragValidate($("#dragEle"),$(".tips"));
  $("#submit").click(function(){
    if(!$("#dragEle").attr("validate")){
      alert(" !");
    }else{
      alert(" !");
    }
  });
</script>
</body>
</html>

2. selenium을 사용하여 마우스 드래그 동작을 하는데 구체적인 코드는 다음과 같다.


from selenium import webdriver
import unittest
from selenium.webdriver import ActionChains
import time
 
 
url = 'http://192.168.62.9:1234/easytest/tt'
driver = webdriver.Chrome(executable_path="C:\chromedriver.exe")
driver.get(url)
driver.maximize_window()
 #  , , 
drag1 = driver.find_element_by_id('dragEle')
 
#  ActionChains, webdriver driver , WenDriver 
action_chains = ActionChains(driver)
#  
#  , 10 , 5 
action_chains.drag_and_drop_by_offset(drag1, 208, 0).perform()
time.sleep(5)
driver.quit()
이상은python이selenium을 바탕으로 마우스 드래그 기능을 실현하는 상세한 내용입니다. 더 많은python 마우스 드래그에 관한 자료는 저희 다른 관련 글을 주목해 주십시오!

좋은 웹페이지 즐겨찾기