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 に答える