• 请不要在回答技术问题时复制粘贴 AI 生成的内容
pureGirl
V2EX  ›  程序员

爬虫时有什么办法处理滑块验证等验证方法吗

  •  
  •   pureGirl · May 27, 2024 · 10015 views
    This topic created in 901 days ago, the information mentioned may be changed or developed.
    58 replies  •  2024-06-04 09:56:14 +08:00
    zealotxxxx
    zealotxxxx
    May 27, 2024
    1
    ddddocr
    quantum00549
    quantum00549
    May 27, 2024
    2
    以前用 selenium 时做过 yolo 定位检测, 然后模拟拖动鼠标, 拖动轨迹还得是变加速轨迹啥的, 但是很快发现废了半天劲, 人家滑块验证进化了, 继续投入就是无底洞, 最后的方案就是遇到滑块验证就给人发个邮件
    feiniu
    feiniu
    May 27, 2024
    3
    这个滑动轨迹很难整
    DingJZ
    DingJZ
    May 27, 2024
    4
    有一些云平台的,调用他们的 api
    flowerains
    flowerains
    May 27, 2024
    5
    这个问题我也挺想知道的,最近很多内部系统都升级了

    不是滑块就是拼图的,整得我写程序都蓝瘦的一批
    pureGirl
    pureGirl
    OP
    May 27, 2024
    6
    @quantum00549 发邮件是什么方法
    feiniu
    feiniu
    May 27, 2024
    7
    发邮件是吧滑块的链接通过邮件发送给某个人,让他手动滑一下吧
    garlics
    garlics
    May 27, 2024
    8
    花钱找人工打码平台
    shadowyue
    shadowyue
    May 27, 2024❤️1
    9
    这种交互性验证都不太好处理。我在拼多多遇到过更逆天的,一个 3d 的骰子让你自己旋转按顺序点击上面的文字🤣太逆天了
    JohnYep
    JohnYep
    May 27, 2024
    11
    这种怎么弄呢
    burymme11
    burymme11
    May 27, 2024
    12
    时应该没有吧,当时用 selenium 算坐标,模拟试了很久,匀速,加速度,定时卡顿,各种行为都模拟了,就是不行,偶尔成一次两次,无法稳定。
    daliusu
    daliusu
    May 27, 2024
    13
    不是有人工验证码平台吗?我记得十几年前我做游戏脚本就有这种,但是还是人工输文字,现在没支持拖拽么
    cnfox
    cnfox
    May 27, 2024
    14
    超级鹰之类的 。传给他们图片他们会返回为止 ,然后驱动浏览器内核模拟滑动区块。这是我们之前的解决方案
    cnfox
    cnfox
    May 27, 2024
    15
    @cnfox #14 返回滑动距离之类的
    ZnductR0MjHvjRQ3
    ZnductR0MjHvjRQ3
    May 27, 2024
    16
    你可以给图片抓出来 然后发给 gpt-4o 来处理,或者直接用三方,还有一个最笨的办法,将大量的滑块写死做成本地数据然后遇到了就去搜,没有就刷新,不过这种办法现在应该不是那么好用了
    ddczl
    ddczl
    May 27, 2024
    17
    就是猫鼠游戏,在便捷性和成本上做取舍,现在我们公司大多数情况是发消息,无论是邮件还是短信。
    flyv2x
    flyv2x
    May 27, 2024
    18
    @zealotxxxx 这个 ocr 还不错哦
    Solix
    Solix
    May 27, 2024
    19
    尝试用 gpt-4o+鼠标控制+图片取帧+坐标控制来试试
    silencelixing
    silencelixing
    May 27, 2024
    20
    @Motorola3
    @gaobh
    我给 4o 识别了一下楼里面的验证码所包含的文字,根本识别不出来,乱答一通,所以 4o 的方案不可行。

    marcolin18
    marcolin18
    May 27, 2024
    21
    1. 在 github 上有很多基于 playwright 的滑动验证的实现,你可以看一下找找思路;
    2. 如楼上 @Motorola3 所说,结合 LLM 来处理,prompt 提示类似 “这是一张验证码图片,请帮助识别验证码类型并给出基于 XXX 的解决代码。图片的 base64 编码如下 {base64_image}”,约束解决方案,比如返回一段基于 playwright 的代码,加载环境运行。这个方案要做的丝滑可能需要打通比较多的步骤,没有基础和时间可以做了解即可。
    daysv
    daysv
    May 27, 2024
    22
    @JohnYep 做过,不麻烦, 下面 ocr 识别文字, 上面先定位坐标,再切图,再处理,再识别, 之后再比对。
    还有一种是成语之类的, 就是先获取 4 个文字,然后统一多条件查找词典,找到后按权重最高的进行顺序点击。
    marcolin18
    marcolin18
    May 27, 2024
    23
    @silencelixing 你给的 prompt 的问题,你要遵循一些原则。 给它完整的图片,包含验证码要求,要求它输出解决代码示例。
    JohnYep
    JohnYep
    May 27, 2024
    24
    @daysv #22 有类似的案例吗
    firefox12
    firefox12
    May 27, 2024
    25
    服务器端是如何验证你的滑动操作的? 有人说下吗?这个是关键啊。
    daysv
    daysv
    May 27, 2024
    26
    @JohnYep 只能说生产在运行,3 次内基本都能成功
    ZnductR0MjHvjRQ3
    ZnductR0MjHvjRQ3
    May 27, 2024
    27
    @silencelixing 你这种可以直接找第三方 看你这个验证码大概率是国内平台了 国内有很多平台做的 我之前用过的是极验好像
    LieEar
    LieEar
    May 27, 2024
    28
    @firefox12 我之前了解的是校验滑动的距离,还有些高级的会校验轨迹(人手滑动的不是匀速)
    evan9527
    evan9527
    May 27, 2024
    29
    有没有这种生意?把全世界的各种真人验证集合在一起,雇人一天 8 小时就是做各种真人验证。
    xuminzhong
    xuminzhong
    May 27, 2024
    30
    滑块验证 算是比较简单一种,我们已经有处理过几个这样的网站,抖音、京东、小红书都行,
    成功率在 95%以上,反而重试 1 、2 次肯定能成功。

    现在在搞文字和图像识别的类型,这 2 类感觉比较难。
    silencelixing
    silencelixing
    May 27, 2024
    31
    @marcolin18 #23 #23 能给一个成功的例子/prompt 吗 就针对楼里面的这张验证码
    JohnYep
    JohnYep
    May 27, 2024
    32


    @daysv #26 试了一下感觉步骤还是有点繁琐

    1 、先识别最底下的四个汉字 [音,过,读,饭]
    2 、将上面的图片切片成小方块,缩小方块范围动态控制例如 [50*50]
    3 、识别小方块是否有汉字,有就找出对应的坐标,依次找出 [音,过,读,饭]
    4 、重复第二步骤改变切割的方块大小 [35*40] ,重新切重新识别
    5 、反复 2 、3 、4 流程直到找到所有的汉字以及对应的坐标结束流程

    感觉这样频繁调用 ocr 有点费 orc
    forty
    forty
    May 27, 2024
    33
    滑块的,一般是先录制几百个手工轨迹。
    顺序点击几个文字的,ai 识别目前也不是很理想.

    我遇到 X 的验证,出个题,给几个答案图,要你选择正确的答案。题目和答案图是基于模板随机生成的。
    比如,题目:选择有 3 个石头的图,答案图里是石头混合其它物品,其中 1 个图里的石头刚好 3 个就是你要选的。
    pkoukk
    pkoukk
    May 27, 2024
    34
    @evan9527 十年前就有,给游戏工作室的挂机脚本过验证的
    Wyearn
    Wyearn
    May 27, 2024
    35
    @JohnYep #11 这个可以通过大模型训练,可以自动选择的。
    shiny
    shiny
    May 27, 2024
    36
    现在人机识别也有不少基于机器学习的。变成了 AI 大战
    daysv
    daysv
    May 27, 2024
    37
    @JohnYep ocr 服务自己的随便调,另外定位文字坐标不需要 ocr , 定位好了后才切片 ocr 。
    zzl22100048
    zzl22100048
    May 27, 2024
    38
    @JohnYep #11 这种匹配类的验证码用 目标检测+相似度,不要把它当文字
    yumizhao888
    yumizhao888
    May 27, 2024
    39
    这些都是钱,搞定了搞成接口给别人调用,以前是 1000 个 10 块钱左右。
    marcolin18
    marcolin18
    May 27, 2024
    40
    @silencelixing 我好像回不了图片和太长的文字,v 站新号。
    quantum00549
    quantum00549
    May 27, 2024
    41
    @pureGirl 收到通知就赶紧去手动处理下😄
    JensenQian
    JensenQian
    May 27, 2024
    42
    经典的小老鼠吃奶酪
    [img][/img]
    marcolin18
    marcolin18
    May 27, 2024
    43
    @yumizhao888 #39 人工打码目前来说确实还是相对有效便宜的。
    shinsekai
    shinsekai
    May 27, 2024
    44
    比如人工分布式验证?
    JohnYep
    JohnYep
    May 27, 2024
    45
    @zzl22100048 #38 找不道好的思路
    gauthier
    gauthier
    May 27, 2024
    46
    滑块还算比较简单了,用深度学习整个小模型识别缺口位置。指针滑动我还真不知道咋整,我搞过的有漏洞,速度快就能成了。
    zzl22100048
    zzl22100048
    May 27, 2024
    47
    @JohnYep #45
    这验证码是工信部的吧
    github 上有人训练好了
    yjfkk
    yjfkk
    May 27, 2024
    48
    没有,斗不过大公司,他们有整个团队。
    可以换个思路,爬虫一般在浏览器启动的时候,不新启浏览器,可以用登录浏览器实例进行爬取。我用 playwright 框架有 https://playwright.dev/python/docs/api/class-browser#browser-new-browser-cdp-session 方法,缺点是无法大批量执行。
    buerle
    buerle
    May 27, 2024
    49
    通过 puppeteer nginx 代理注入自动化 js ,提前分析获取滑块背景图 & 滑块图片,拿到图片通过 API 接口,提交图片 opencv 的库(网上应该有案例)的服务去匹配图片需要移动坐标的位置。之前开过 1000+的账号实例测试,验证过效果应该还行。
    JohnYep
    JohnYep
    May 27, 2024
    50
    @zzl22100048 #47 是的确实是工信部的,github 上有吗,我咋没找到呢
    luzihang
    luzihang
    May 27, 2024
    51
    图鉴买个模型服务,解决
    luzihang
    luzihang
    May 27, 2024
    52
    或者自研模型,和 gpt 一个逻辑。买 api 还是自己训练模型
    ducuducu
    ducuducu
    May 27, 2024
    53
    ui 自动化
    Blanke
    Blanke
    May 27, 2024
    54
    只说滑块,其他研究得少。缺口很容易,一般 opencv 就行,主要是参数加密,思路是逆向,分析参数,有些不是轨迹有问题,而是环境,大部分后端都是综合判断,猜测是 ai 或模型判断。分析所有参数后,可以还原算法或者 rpc 配合等。比如 ali tx007 jiyan 等都能按这个思路搞。
    SuperXX
    SuperXX
    May 28, 2024 via iPhone
    55
    昨天碰到 EPICGAME 的滑动验证码, 请在下面 9 个图像中选择出价格最贵的….
    pureGirl
    pureGirl
    OP
    May 28, 2024
    56
    @yjfkk 试了一下也不太行,登录过了,后面还是会有验证
    yjfkk
    yjfkk
    May 28, 2024
    57
    @pureGirl ai 投入太大,长期数据才值得投入研究,短期的就搞个通知,人工通过验证,然后用 UI 自动化在页面上操作。
    yjfkk
    yjfkk
    Jun 4, 2024
    58
    来挖坟,看到一个解决方案,需要花钱: https://2captcha.com/
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2002 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 144ms · UTC 01:27 · PVG 09:27 · LAX 17:27 · JFK 20:27
    ♥ Do have faith in what you're doing.