JSoup模拟登录成功后,请求相关页面出现权限不够问题

之前使用JSoup,带上账号、密码、验证码和cookie是可以请求任何页面的,但是这两天学校做了教务处系统升级维护后,一带上这个cookie请求一些有个人相关信息的页面就跳出要你重新登录的界面出来或者是直接显示你的权限不够,这可怎么办?
(我的cookie是在登录前使用“Connection.Response rs=Jsoup.connect(url).execute();”这样的方式得来的,然后在登录时带上它,不知道是不是因为这个问题)

1个回答

package jsoupTest;

import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.jsoup.Connection.Method;
import org.jsoup.Connection.Response;
import org.jsoup.Jsoup;

public class JsoupTest {
public static void main(String[] args) throws IOException {
Map map = new HashMap<>();
//map.put请根据自己的微博cookie得到

Response res = Jsoup.connect("http://weibo.com/u/别人的主页id")
    .cookies(map).method(Method.GET).execute();
String s = res.body();
System.out.println(s);
String[] ss = s.split("<script>FM.view");
int i = 0;
// pl_content_homeFeed
// pl.content.homeFeed.index
List<String> list = new ArrayList<>();
for (String x : ss) {

// System.out.println(i++ + "======================================");
// System.out.println(x.substring(0,
// x.length() > 200 ? 200 : x.length()));
// System.out.println("===========================================");
if (x.contains("\"html\":\"")) {
String value = getHtml(x);
list.add(value);
System.out.println(value);
}

}
// content=ss[8].split("\"html\":\"")[1].replaceAll("(\\\\t|\\\\n)",
// "").replaceAll("\\\\\"", "\"").replaceAll("\\\\/", "/");
// content=content.substring(0,
// content.length()<=13?content.length():content.length()-13);
// System.out.println(Native2AsciiUtils.ascii2Native(content));

}

public static String getHtml(String s) {
String content = s.split("\"html\":\"")[1]
.replaceAll("(\\t|\\n)", "").replaceAll("\\\"", "\"")
.replaceAll("\\/", "/");
content = content.substring(0,
content.length() <= 13 ? content.length()
: content.length() - 13);
return Native2AsciiUtils.ascii2Native(content);
}

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问