通过类名称查找元素并将其放在jsoup的data部分中

时间:2018-12-19 15:31:53

标签: java jsoup

这就是问题,我有这段代码:

<form action="Login.cfm" method="POST" name="login">

    <h1>Logga in</h1>

    <div class="form-group">
        <label>E-post</label>
        <input type="text" name="user_email" class="form-control" value="">
    </div>

    <div class="form-group">
        <label>Lösenord</label>
        <input type="password" class="form-control" name="user_password">
    </div>


    <input type="HIDDEN" name="action" value="login_nowin">

    <div class="row mb-3">
        <div class="col-md-6 mb-3">
            <input type="SUBMIT" class="btn btn-primary btn-login" value="Logga in" />
        </div>
        <div class="col-md-6 text-md-right">
            <a href="?startli=1" class="btn btn-linkedin"><span class="sr-only">Login with LinkedIn</span></a>
        </div>
    </div>

    <p>Har du glömt ditt lösenord? <a href="login_email.cfm">Get a reset link sent to you by e-mail.</a></p>

    <p>Ny användare? <a href="Register.cfm">Klicka här</a>!</p>
</form>

我正在使用jsoup登录并创建一个cookie,以便我可以与正在导航的站点保持连接。就像这样:

Connection.Response login =
            Jsoup.connect("https://myework.eworkgroup.com/Login.cfm")
                    .data("user_email","an email")
                    .data("user_password","a password")
                   .data("div.btn btn-primary btn-login", "Logga in")
                    .data("action","login_nowin")
                    .cookies(initial.cookies())
                    .method(Connection.Method.POST)
                    .execute();

我无法连接,我认为问题在于按钮没有名称或ID。

是否有人知道这是另一个问题还是如何解决?

谢谢!

1 个答案:

答案 0 :(得分:0)

在没有名称的情况下,可以在这种情况下使用FormElement。

曾经问过类似的问题,请检查: How to fill a form with Jsoup?

这是有关FormElement的其他信息: https://jsoup.org/apidocs/org/jsoup/nodes/FormElement.html