当前位置: 首页 > 面试题库 >

如何使用Jsoup获取表单验证码图像?

卫振
2023-03-14
问题内容

我正在为学校网站开发一个应用程序,并且正在使用jsoup解析html。

我遇到了验证码图片的问题,我看到了这个问题,并且已经实现了,但是没有获得与网站上显示的图片相同的图片。

我如何获得相同的图像验证码,该网站正在使用BotDetectCaptcha我有点困惑,我该如何在我的网站上专门进行验证


问题答案:

如SLaks的评论所述,您可能缺少一些cookie。

这是提供的网址的工作示例:

// Load the initial page for getting the required cookies
Connection conn = Jsoup.connect("https://www.saes.upiicsa.ipn.mx/");
Document d = conn.get();

Element captcha = d.select("#c_default_ctl00_leftcolumn_loginuser_logincaptcha_CaptchaImage").first();
if (captcha == null) {
    throw new RuntimeException("Unable to find captcha...");
}

// Fetch the captcha image
Connection.Response response = Jsoup //
        .connect(captcha.absUrl("src")) // Extract image absolute URL
        .cookies(conn.response().cookies()) // Grab cookies
        .ignoreContentType(true) // Needed for fetching image
        .execute();

// Load image from Jsoup response
ImageIcon image = new ImageIcon(ImageIO.read(new ByteArrayInputStream(response.bodyAsBytes())));

// Show image
JOptionPane.showMessageDialog(null, image, "Captcha image", JOptionPane.PLAIN_MESSAGE);


 类似资料:
  • 接口说明 获取验证码图片 如需调用,请访问 开发者文档 来查看详细的接口使用说明 该接口仅开放给已获取SDK的开发者 如开启https功能,请求地址的协议应改为https,如:https://www.example.com/wish3dearth/api/access/v1.0.0/getLicenseInfo API地址 GET /authcenter/api/verify/v1.0.0/cap

  • 本文向大家介绍如何使用jQuery验证表单?,包括了如何使用jQuery验证表单?的使用技巧和注意事项,需要的朋友参考一下 首先,您必须制作一个类似html的表单。 现在使用jQuery验证插件以更简单的方式验证表单的数据。 首先,在文件中添加jQuery库。 然后使用简单语法定义规则。 定义错误消息。 现在终于提交表格了。

  • 我有一些url。我想从url指向的html中获取所有href,从所有获取的hrefs中获取所有href(递归)。关键是我想设置“递归”的深度。例如,如果深度=1,我只需要来自超文本标记语言的href。如果深度=2,我需要来自超文本标记语言的hrefs(假设为list1)和来自list1的每个href的hrefs,依此类推 以下是我使用jsoup得到的结果: 我应该如何修复递归条件以使其正确?

  • 接口说明 获取验证码 如需调用,请访问 开发者文档 来查看详细的接口使用说明 该接口仅开放给已获取SDK的开发者 API地址 POST /api/server/1.0.0/getValidCode 是否需要登录 否 请求字段说明 无 响应字段说明 无 响应成功示例 {} 响应失败示例 {} 响应接受类型 image/jpeg;charset=UTF-8 响应状态码 HTTP状态码 原因 204 N

  • 本文向大家介绍如何使用CSS和JavaScript创建密码验证表单?,包括了如何使用CSS和JavaScript创建密码验证表单?的使用技巧和注意事项,需要的朋友参考一下 要使用CSS和JavaScript创建密码验证表单,代码如下- 示例 输出结果 上面的代码将产生以下输出- 在输入用户名和密码-

  • 我正在尝试从网站获取一些数据。它看起来像这样 我只需要得到div标签中的时间值。这是我的Java代码。 它没有给出任何错误,但在日志上 "D/NetworkSecurityConfig:未指定网络安全配置,使用平台默认设置" 我看到也许这可以帮助你解决问题。提前感谢您,任何回应将不胜感激。