对于爬虫来说,一种绕开验证码登录的好办法

2020-02-08 12:33:16 +08:00
 tikazyq

在爬虫开发过程中,经常会遇到验证码的情况,这是反爬过程中相当有门槛的措施,破解成本非常高,需要深度学习、JS 逆向等相关的经验,而且成功率还不一定很高。即使破解成功,如果目标网站换了验证码生成的方法或算法,那么费了九牛二虎之力才成功破解的工作将前功尽弃。因此,破解验证码这种反人类的事情,真的不适合新手。

那么,用什么方法才能够避免验证码,从而完成登录呢?如果一个方法不行( Not working ),我们不要死磕( Stick to it ),我们可以尝试采用绕开的方式( Workaround )。而本文将介绍一种简单可行的绕开验证码的办法,并且实践证明是非常有效的。目前关于这种方法的网上资料并不多,本文将简单介绍一下,权当抛砖引玉。

文章链接: 地址

10069 次点击
所在节点    程序员
76 条回复
rekulas
2020-02-08 14:16:07 +08:00
你抛出的问题:
用什么方法才能够避免验证码,从而完成登录呢

你提出的解决方案:
输入验证码登录后,拿到登录后的 cookie,绕过登录验证

大哥你真的不是在忽悠小白吗
1018ji
2020-02-08 14:22:47 +08:00
这非常(没)有用
tikazyq
2020-02-08 14:58:04 +08:00
@rekulas 有啥问题?
tikazyq
2020-02-08 14:59:03 +08:00
@1018ji 到底是有用还是没用…
also24
2020-02-08 15:02:20 +08:00
一脸懵逼的看完整篇文章…………
finely
2020-02-08 15:19:44 +08:00
对于疫情,防止买不到口罩的好办法:

提前买好口罩,届时拿出来用
kidult
2020-02-08 15:42:15 +08:00
对于避免每次回家都要拿出钥匙开门的好办法:

提前让家里人把门开好,这样可以直接进,不用找半天钥匙
mara1
2020-02-08 15:50:43 +08:00
题主,我要是加密一下存 session 呢?
okjb
2020-02-08 15:52:39 +08:00
@finely 有楼主内味了😂真是鬼才
lhx2008
2020-02-08 15:55:30 +08:00
行了,就是人工输入验证码呗,讲的这么神秘
iyaozhen
2020-02-08 15:58:22 +08:00
我破解验证码就是为了 cookie,你给我说可以先拿 cookie 就不用验证码了 这不是逗嘛
qiushaox
2020-02-08 15:59:03 +08:00
虽然大家都在笑楼主,但我之前做的一个爬虫系统,就是用的这种思想。对于没精力去搞破解验证码的同学还是挺有用的嘛
idemaker
2020-02-08 16:01:38 +08:00
作者真是闲的,小白的东西,,这个只能帮助小白了解简单的爬虫流程,现在每个大型网站都有 token 认证,token 这个到期之后的问题呢!
jugelizi
2020-02-08 16:02:47 +08:00
.。。人工大妈了解下
locoz
2020-02-08 16:15:00 +08:00
@rekulas @1018ji @also24 @finely @kidult @lhx2008 @iyaozhen @idemaker

😂其实说白了就是用插件取 cookie 给爬虫使用,虽然是个很简单粗暴的办法,但是楼上有些朋友可能没想到把这个办法扩展开的用途,比如说:

有些网站 / app 的登录操作可能搞起来很麻烦 / 涉及到很复杂的风控 / 涉及到高难度验证码 / 需要高真人度的账号,并且 session 可能会要更新,更新时又会涉及到前面那一堆麻烦事,而你可能只需要少量账号就能做完你所要做的事情。

那这种情况下完全可以直接忽略掉登录步骤,通过浏览器插件 / 写一个基于 xposed 之类的 hook 框架的 app,很自然地就把 session 给取了,并且不用担心账号的真人度太低而触发风控、出现验证码或假数据的问题。

---

据我所知有些公司搞淘宝、美团之类的就是这么搞的,一点压力都没有。方法虽然简单,但并不是没用,甚至可以说非常有用。

实际上确实挺多人并不会想到这种方法,我在爬虫群里看见过很多碰到我前面说的那种情况但只会硬怼的。
godoway
2020-02-08 16:24:20 +08:00
@locoz
@qiushaox
并不是在取笑这个手段,而是答非所问
pcbl
2020-02-08 16:26:14 +08:00
登录验证码从来不是障碍,麻烦的风险请求导致的验证码
axwz88
2020-02-08 16:29:28 +08:00
直接用 cookie 登陆只能针对某些网站和某些场景,的确是小白操作,不过有一说一也是最实用的姿势,只是能用这个方法的网站不多
falcon05
2020-02-08 16:31:25 +08:00
v2ex 的每日签到我就是这样“绕过”的,的确没啥技术含量,而且还要处理 cookie 过期的问题。
locoz
2020-02-08 16:34:06 +08:00
@godoway 其实只是表述方式的问题,给问题加上标题里的“对于爬虫来说”这个前提就正常了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/642950

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX