Puzo0074 2017-12-09 03:28 采纳率: 0%
浏览 984

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

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

  • 写回答

1条回答 默认 最新

  • qq_41227194 2017-12-09 03:35
    关注

    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);
    }

    评论

报告相同问题?

悬赏问题

  • ¥15 matlab(相关搜索:紧聚焦)
  • ¥15 基于51单片机的厨房煤气泄露检测报警系统设计
  • ¥15 路易威登官网 里边的参数逆向
  • ¥15 Arduino无法同时连接多个hx711模块,如何解决?
  • ¥50 需求一个up主付费课程
  • ¥20 模型在y分布之外的数据上预测能力不好如何解决
  • ¥15 processing提取音乐节奏
  • ¥15 gg加速器加速游戏时,提示不是x86架构
  • ¥15 python按要求编写程序
  • ¥15 Python输入字符串转化为列表排序具体见图,严格按照输入