bpe*_*oso -2 java captcha bufferedimage webclient javax.imageio
我需要在图像中找到字母.我需要一个帮助来编写一个算法来解码图像.
我把图像转换成了一个ByteArrayOutputStream
但我不知道我用它做了什么.
有我的java代码:
URL url = new URL(urlImg);
WebClient webClient = new WebClient(BrowserVersion.getDefault());
WebRequest reqImg = new WebRequest(url);
reqImg.setHttpMethod(HttpMethod.GET);
InputStream imgStream = webClient.getPage(reqImg).getWebResponse().getContentAsStream();
BufferedImage img = ImageIO.read(imgStream);
ByteArrayOutputStream out = new ByteArrayOutputStream();
ImageIO.write(img, "png", out);
Run Code Online (Sandbox Code Playgroud)
依赖关系:net.sourceforge.htmlunit htmlunit 2.15
JDK 1.6.0_43
Ale*_*rny 11
http://scraping.pro/example-captcha-solver-java/
我注意到你正在使用Java,这是一种用Java实现的方法.假设验证码不是很安全,解码验证码是非常可能的.这正是验证码总是越来越复杂的原因 - 人们可以打破它们.
编辑如果您没有在Java上进行硬设置并且不想使用付费服务,则可以在Python中使用本教程:http://www.boyter.org/decoding-captchas/
- 顺便说一下 - 解码验证并不总是不道德的.有时需要它或使生活更轻松.例如,我正在与之合作的公司不会在其网站上禁用Captcha进行自动化测试.如果我想运行自动化测试,我必须绕过Captcha.这也意味着其他人也可以绕过Captcha,如果他们真的想要,但该公司显然不关心,并希望易于阅读,传统的Captchas.