仅限个人学习使用,不针对任何人或任何企业和组织。通过对比图像和图像识别等一些方式,去识别并跳过拖动验证的方法。
主要就是都是针对网上的一些方法和思路的总结。然后根据实际的业务需求进行的调整。
网上有很多人都提供了一些其它平台(或者针对以前的方案),其中大多数是针对原图和缺口图同时存在的方案,这种一般都是采用对比图片的像素点,把最左侧的不一致点位标出来,来找到缺口的位置。
但是现在大多数的滑块验证,一般都不提供缺口了,基本都是提供一个原图作为背景,然后再提供一个滑块图片用于显示。
那么这里通过使用opencv的“模板匹配”的这种方式来实现,仅通过滑块和缺口图找到缺口位置的。
但是截至目前位置,这种识别一般情况只能针对每一家的不同情况,先处理图片才能得到好的效果。
当然还有一些大神,已经动用了机器学习去搞他们了。。。
其实针对jd,主要的难点是如何模拟人操作单动作轨迹,不让对方的机器学习发现。
经过调查发现是每次执行的 move_by_offset
的方法时,会有一个停顿时间。
我的解决方法:需要修改selenium,源码中 class PointerInput(InputDevice)
的 DEFAULT_MOVE_DURATION
属性的值,从250调低,一般可能是10 - 70左右(具体需要测试)。(另外我的selenium是3.141.0版本,没有找到从外界传入或者修改该参数的位置,如果有知道可以告诉我一下,谢谢了)
相关文章:
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。