1.代码实现

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.common.exceptions import UnexpectedAlertPresentException
from time import sleep driver= webdriver.Ie()
driver.get('https://www.helloweba.net/demo/2017/unlock/')
driver.implicitly_wait(5) dragger = driver.find_elements_by_class_name('slide-to-unlock-handle')[0] #错误为:find_element_by_class_name action = ActionChains(driver) action.click_and_hold(dragger).perform() #鼠标左键按住不放 for index in range(200):
try:
action.move_by_offset(2,0).perform() #平行移动鼠标
except UnexpectedAlertPresentException:
break
action.reset_actions()
sleep(0.1) #等待停顿时间 sucess_text = driver.switch_to.alert.text
print(sucess_text) #打印警告框提示 sleep(5) driver.quit()

2.易错点:find_elements_by_class_name才是正确,当输入为find_element_by_class_name时,运行则报错:TypeError: 'WebElement' object does not support indexing

3.代码解释

(1)driver.find_elements_by_class_name("slide-to-unlock-handle")[0]==先通过class属性找到所有的里面的第一个

(2)click_and_hold()     ==对滑块按下鼠标左键

(3)move_by_offset()  ==通过for循环动滑块的位置,move_by_offset()方法第一个参数是X轴,第二个参数是Y轴,单位为像素。因为是平行移动,所以Y设置为0。 X每次移动两2个像素。每次循环休眠0.1秒,时间间隔越小,移动越顺滑.

最新文章

  1. BZOJ 3339 && BZOJ 3585 莫队+权值分块
  2. UI设计趋势:渐变设计风格重新回归主流
  3. C#中的几个线程同步对象方法
  4. 关于css命名规范
  5. 中秋佳节--理解Enum枚举
  6. java中文乱码解决之道(三)—–编码详情:伟大的创想—Unicode编码
  7. java 如何自定义异常 用代码展示 真心靠谱
  8. C++如何屏蔽双击运行程序功能?
  9. iptables惹的祸
  10. 二维码开源库ZBar-windows下编译和使用
  11. LV 指定或修改逻辑卷的major, minor号[RHEL6]
  12. 使用bat脚本永久激活Windows系统(摘抄)
  13. 怎样用git上传代码到github以及如何更新代码
  14. DevOps - 参考信息
  15. 关于mysql 5.7 版本登录时出现错误 1045的随笔
  16. shiro使用
  17. 微信小程序常见问题
  18. 探秘Tomcat(一)
  19. U深度U盘启动盘制作教程
  20. css初探

热门文章

  1. jsp——js事件修改属性样式的两种方法(直接赋值、修改属性)、验证表单符合某要求、阻止表单提交、告诉浏览器不要缓存
  2. CTCS-2017滚粗记
  3. NumPy Matplotlib库
  4. SQL优化器执行过程之逻辑算子
  5. java-ConcurrentLinkedQueue 简单使用
  6. R语言和中国地图
  7. 复制文件夹的方法 .net
  8. poj3678 2- sat
  9. hdu 5978 To begin or not to begin(概率,找规律)
  10. JS前端重点 -- Generator 函数的含义与用法