3

我有一个网站。

必须登录才能看到里面的内容。

但是,我使用此代码登录。

doc = Jsoup.connect("http://46.137.207.181/Account/Login.aspx")
                  .data("ctl00$MainContent$LoginUser$UserName", "1234")
                  .data("ctl00$MainContent$LoginUser$Password", "123456")
                  .data("__VIEWSTATE","/wEPDwULLTEyMDAyNTY1NjJkGAEFHl9fQ29udHJvbHNSZXF1aXJlUG9zdEJhY2tLZXlfXxYBBSZjdGwwMCRNYWluQ29udGVudCRMb2dpblVzZXIkUmVtZW1iZXJNZUHk9FMvtsvPHqlP3vAV+1oloaxe4Asr7RQX5XFptqGz")
                  .data("__EVENTVALIDATION","/wEWBQLup8mjCgLFyvjkDwLQzbOWAgKVu47QDwKnwKnjBTL6Xsxc9zQnY8p9KVlFJ/8HIHqlOGl9uClF4ktcWYJ5")
                  .data("ctl00$MainContent$LoginUser$LoginButton","2")
                  request.
                  .post();

然后获取登录页面。

doc2 = Jsoup.connect("http://46.137.207.181/Groups.aspx").get();
            s=doc.title();
            Elements kelime = doc.select("td");
            for (Element link : kelime) {
                  linkHref = link.attr("hh");

没有显示登录屏幕。

我想问我该怎么做?

4

1 回答 1

1

您的示例中发生的情况是您正在使用表单数据登录Login.apsx并创建会话,但请求Groups.aspx不携带该会话数据,因此请求未经过身份验证。

Login.aspx将返回一个会话 cookie,您需要将该 cookie 传递给下一个请求。

有关好的示例,请参阅此jsoup 登录问题的答案。

于 2013-03-17T17:27:08.663 回答