如何使用 jsoup post 请求提交没有按钮名称的表单

how to submit form without a name for the button using jsoup post request

我正在尝试 POST 将数据导入网站以使用 Jsoup 登录该网站。这是 html 形式:

    <form action="/user/login" method="POST">
    <table>
    <tr>
      <td><label for="email">E-Mail:</label></td>
      <td><input name="email" value="" /></td>
    </tr>
    <tr>
      <td><label for="password">Passwort:</label></td>
      <td><input name="password" type="password" /></td>
    </tr>
    <tr>
      <td><input type="submit" value="Login" /></td>
    </tr>
    </table>
    </form>

这是我的代码:

 Connection.Response loginForm = Jsoup.connect(LOGINWEBSITE)
                    .userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0")
                    .method(Connection.Method.GET)
                    .execute();


            Document login = Jsoup.connect(LOGIN_URL)
                    .userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0")
                    .data("cookieexists", "false")
                    .data("email", email)
                    .data("password", password)
                    .cookies(loginForm.cookies())
                    .post();

但是没用。对于另一个网站,我只需要为按钮添加一行就可以了。在这里它不起作用,因为按钮没有名称。 基本上我想知道如何提交 from. 我该如何解决这个问题? 非常感谢。

通常您需要首先使用 GET 请求访问登录页面,以获得 post 请求所需的所有 cookies/tokens。我无法为您检查,因为您没有提到您尝试连接的 URL。在您的位置,我会在您手动登录时使用浏览器开发人员工具记录网络流量。然后分析实际来回发送的数据。通常,您可以轻松识别需要与成功登录的 post 请求一起传递的必要 tokens/cookies。