这算不算是没法反推的方案

2014-03-25 02:24:54 +08:00
 P233
根据早上看到的帖子 t/105634 想到的,写了这个页面 http://anti-crawler-number.herokuapp.com/

每次访问随机刷出 3 个数字,全部由 CSS box-shadow 渲染而成,另外参考 anti-piracy font 随机加 pattern 干扰 OCR。还可以更复杂,比如彻底打乱 box-shadow 顺序,浏览器不会出错,想反推几乎是不可能了。
3722 次点击
所在节点    奇思妙想
13 条回复
P233
2014-03-25 02:26:55 +08:00
缺点是一个数字差不多 10kb CSS文件
zorceta
2014-03-25 02:27:57 +08:00
用元素堆一个数字出来

原来想验证码想到的
P233
2014-03-25 02:32:27 +08:00
@zorceta 用像素点堆出来的,跟图片差不多
cdfmr
2014-03-25 07:34:49 +08:00
如果价格显示得跟验证码差不多,我是没兴趣在这样的商城购物的。
alay9999
2014-03-25 08:18:53 +08:00
我倒是愿意抓取了你的当作会员验证码,很好用的样子
est
2014-03-25 08:40:07 +08:00
webkit -> 截屏 -> ORC

haha
sanddudu
2014-03-25 08:47:29 +08:00
最好的验证码
最差的购物体验

另外你有没有考虑低版本浏览器的兼容性?

如果我看个价格跟看reCAPTCHA差不多,我还会有兴趣继续买东西吗
sanddudu
2014-03-25 08:48:35 +08:00
@est html2canvas可以把任意元素用canvas绘出来,保存就不是难事了
est
2014-03-25 09:03:38 +08:00
@sanddudu
@P233

对。所以headless browser可以突破LZ的。

我觉得终极办法是结合用户交互和DOM做。用户必须有鼠标键盘触摸动作之类的才能看到最终图片/文字。用代码模拟用户交互很容易探测。
loading
2014-03-25 09:36:40 +08:00
这个是验证码问题吧…
ericshao
2014-03-25 10:45:34 +08:00
快要想到手机接收价格信息了
P233
2014-03-25 14:42:22 +08:00
@cdfmr
@sanddudu 显示价格就不加 pattern 了,也会去掉 blur,可以实现不使用图片防抓取,OCR 没办法,其实是在折腾验证码。

兼容性就不考虑了,这只是一次尝试,跟造概念车一样

@alay9999 是在想这个做验证码怎么样?我可以进一步优化 CSS,后台 node.js 部分就无能为力了,小菜鸟一枚

@est 难道不能干扰 OCR 吗,我承认这些 pattern 画的比较丑,另外目测 html2canvas 抓不到这个页面 http://html2canvas.hertzen.com/screenshots.html

@loading 没错
JoyNeop
2014-03-25 16:41:19 +08:00
雇个民工人肉爬虫,完破

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

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

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

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

© 2021 V2EX