我一直想使用selenium,java,2captcha的api解决验证码。

它可以点击验证按钮,但是没有解决图片,没有错误弹出。

这是代码:private void solveCaptcha(String apiKey) {

String googleKey ="6Lcsv3oUAAAAAGFhlKrkRb029OHio098bbeyi_Hv";

String pageUrl ="https://secure.runescape.com/m=weblogin/loginform?theme=oldschool&mod=www";

TwoCaptchaService service = new TwoCaptchaService(apiKey, googleKey, pageUrl);

try {

String responseToken = service.solveCaptcha();

By frame = By.xpath("//iframe[@title='recaptcha challenge']");

WebElement frameElement = driver.findElement(frame);

driver.switchTo().frame(frameElement);

System.out.println("Solved and Generated Response Token:" + responseToken);

JavascriptExecutor js = (JavascriptExecutor) driver;

js.executeScript("document.getElementById('recaptcha-token').innerHTML = '" + responseToken +"';");

Thread.sleep(500);

js.executeScript("document.getElementById('recaptcha-verify-button').click();");

} catch (InterruptedException e) {

System.out.println("ERROR case 1");

e.printStackTrace();

} catch (IOException e) {

System.out.println("ERROR case 2");

e.printStackTrace();

}

}

Logo

一站式 AI 云服务平台

更多推荐