python破解滑动解锁_selenium+python自动化102-登录页面滑动解锁(ActionChains)

本文介绍了如何使用Python的selenium库通过ActionChains模块来自动化处理登录页面的滑动解锁。通过click_and_hold、move_by_offset和release方法模拟鼠标操作,成功解锁滑块并点击登录按钮。
摘要由CSDN通过智能技术生成

前言

登录页面会遇到滑动解锁,滑动解锁的目的就是为了防止别人用代码登录(也就是为了防止你自动化登录),有些滑动解锁是需要去拼图这种会难一点。

有些直接拖到最最右侧就可以了,本篇讲下使用 selenium web 自动化的时候如何滑动解锁。

滑动解锁场景

看下图,是我本地写的一个 slider.html 网页

除了输入账号和密码,还需将滑块拖动到最右端才能解锁

最后才去点登陆按钮

ActionChains 滑动滑块

查看 ActionChains 使用源码,相关介绍

ActionChains是一种自动化低级交互的方法,比如鼠标移动、鼠标按钮操作、按键和上下文菜单交互。这对于执行更复杂的操作(如悬停和拖放)非常有用

在调用ActionChains对象上的操作方法时,这些操作存储在ActionChains对象的队列中。调用perform()时,事件将按其顺序激发排队等候。

使用上有2种实例,一种可用于链模式

menu = driver.find_element_by_css_selector(".nav")

hidden_submenu = driver.find_element_by_css_selector(".nav #submenu1")

ActionChains(driver).move_to_element(menu).click(hidden_submenu).perform()

另外一种方式操作可以一个接一个排队,然后执行

menu = driver.find_element_by_css_selector(".nav")

hidden_submenu = driver.find_element_by_css_selector(".nav #submenu1")

actions = ActionChains(driver)

actions.move_to_element(menu)

actions.click(hidden_submenu)

actions.perform()

不管是哪种方式,动作都是按照调用的顺序执行的,一个接一个另一个。

实现代码

selenium 里面滑动滑块需用到鼠标事件,回放下刚才操作的慢动作:按住 >> 按钮 -> 往右移动鼠标到最右端 -> 释放鼠标 -> 解锁成功

于是会用到click_and_hold move_by_offset release 这三个方法,最后用 perform() 执行

from selenium

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值