陈公子的话 发表于 2023-7-2 10:38:31

极验滑块轨迹校验

```
def get_slide_track(distance):
    """
    根据滑动距离生成滑动轨迹
    :param distance: 需要滑动的距离
    :return: 滑动轨迹<type 'list'>: [, ...]
      x: 已滑动的横向距离
      y: 已滑动的纵向距离, 除起点外, 均为0
      t: 滑动过程消耗的时间, 单位: 毫秒
    """

    if not isinstance(distance, int) or distance < 0:
      raise ValueError(f"distance类型必须是大于等于0的整数: distance: {distance}, type: {type(distance)}")
    # 初始化轨迹列表
    slide_track = [
      ,
      ,
    ]
    # 共记录count次滑块位置信息
    count = 30 + int(distance / 2)
    # 初始化滑动时间
    t = random.randint(50, 100)
    # 记录上一次滑动的距离
    _x = 0
    _y = 0
    for i in range(count):
      # 已滑动的横向距离
      x = round(__ease_out_expo(i / count) * distance)
      # 滑动过程消耗的时间
      t += random.randint(10, 20)
      if x == _x:
            continue
      slide_track.append()
      _x = x
    slide_track.append(slide_track[-1])
    return slide_track, slide_track[-1]# 大数组,滑动时间

def __ease_out_expo(sep):
    if sep == 1:
      return 1
    else:
      return 1 - pow(2, -10 * sep)


```

分享一段极验滑块轨迹生成来源于互联网 测试没什么问题 成功率99%
!(data/attachment/forum/202307/02/103823i6ufekfk6mu6n0wf.png)

wjy0 发表于 2023-7-3 23:05:44

收藏,说不定哪天遇到

xiaooooooo 发表于 2023-7-5 22:47:15

恕我肤浅……为啥我没有看到读取轨迹缺口的代码部分?

陈公子的话 发表于 2023-7-6 13:36:34

xiaooooooo 发表于 2023-7-5 22:47
恕我肤浅……为啥我没有看到读取轨迹缺口的代码部分?

轨迹算法分享

陈公子的话 发表于 2023-7-6 13:38:10

xiaooooooo 发表于 2023-7-5 22:47
恕我肤浅……为啥我没有看到读取轨迹缺口的代码部分?

缺口这里不用处理计算滑动距离处理即可

tongyi 发表于 2023-8-11 18:09:41

请教一下,为啥我用这个生成轨迹请求几次就被检测到了,显示{'success': 0, 'message': 'forbidden'}
页: [1]
查看完整版本: 极验滑块轨迹校验