java - 从需要密码的网站获取数据

标签 java android jsoup

我正在考虑制作一个从网站获取数据的应用程序。但只有输入用户名和密码后才能进入该网站。例如,如果您访问 example.com,浏览器会提示您“example.com 正在请求用户名和密码”,并允许您输入用户名和密码。我将如何在应用程序内处理这个问题?我计划在登录后使用 jsoup 收集数据。 谢谢。

最佳答案

这在一定程度上取决于登录的实现方式。如果是 HTTP POST 请求,您通常可以在 JSoup 中执行此操作,如下所示: Connection.Response response = Jsoup.connect(url).data("username", "user", "password", "pwd") .method(Method.POST).execute()。 “用户名”和“密码”是通常与 HTML 表单字段相对应的 POST 参数的名称。这是一种有效但简单的方法。有时(经常)页面使用额外的安全措施,例如验证码或利用 Javascript,例如密码加密。然后你需要模拟它。但这取决于具体网站的实现。

如果他的网站使用基本 HTTP 身份验证(您对弹出窗口的描述听起来有点像),您可以在这里找到解决方案:Jsoup connection with basic access authentication .

关于java - 从需要密码的网站获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11894213/

相关文章:

java - 使用 Spring 3.1 的 Java 配置来配置 spring-data-mongodb 存储库

java - 在这种情况下,组合模式是一个好的选择吗?

java - 网站关闭时会引发哪种异常?

java - HTML 结构因输入而异

java - 移动 arraylist 对象的动画

java - GSON : Expected BEGIN_OBJECT but was STRING

android - react-native: NativeBase 如何使控件居中

android - 无法理解如何使用 Theme.AppCompat 为 Lollipop 之前的设备设置 Android 应用程序的样式

java - 使用 JSoup 合并 Java 中的 HTML 文件

java - Spring security 预认证成功处理程序