在Android中解析并执行HTML

时间:2016-11-19 03:03:34

标签: java android jsoup html-parsing

我需要用Java解析网页中的HTML元素,填写表格并提交以模拟登录。

我一直在做一些研究,这是我使用jsoup库所做的。

然而,在实现之后,我意识到jsoup仅用于解析,并且不能执行按钮点击。例如。

在此示例中,我需要点击submitButton元素。

try {
    Document htmlDoc = Jsoup.connect(MY_URL).get();
    Element loginForm = htmlDoc.getElementById("login-form");
    Element usernameField = loginForm.getElementById("username");
    Element passwordField = loginForm.getElementById("passwd");
    Element submitButton = loginForm.getElementById("submit");

    usernameField.val(username);
    passwordField.val(password);

    // I need to simulate `submitButton` click so I can login

} catch (Exception e) {
    Log.e("TAG", e.toString());
}

我是否理解jsoup无法做到这一点?

如果是这样,是否有适合Android的库?

我知道有很多Java库,但由于javax限制,大多数都无法使用Android(例如HtmlUtil)。

1 个答案:

答案 0 :(得分:1)

您可以查看此链接。提供良好的answer

步骤应如下:

  1. 转到登录页面
  2. 使用jsoup解析用户名和密码
  3. 的html
  4. 将其替换为实际的用户名和密码
  5. 使用http POST发布用户名和密码表单。