文章11 | 阅读 5085 | 点赞0
在JSoup模拟登录网站(以校园内网为例)中我们只是模拟登录了华北电力大学内网,如下所示:
假设现在我们要访问其中某一个网站:新教务系统,其url为:
https://202-204-74-178.webvpn.ncepu.edu.cn/jwglxt/xtgl/login_slogin.html
教务系统登录也需要账号密码,相当于我们经历了两次模拟登录。
我们先利用在JSoup模拟登录网站(以校园内网为例)中获得的cookies进入到新教务系统的登录页面:
public static void get_jwxt(Map<String, String> cookies) throws IOException {
String url_login = "https://202-204-74-178.webvpn.ncepu.edu.cn/jwglxt/xtgl/login_slogin.html";
Document document = Jsoup.connect(url_login).cookies(cookies).post();
System.out.println(document);
}
这里面的cookies就是上一步登录获得的cookies。
如果没有这个cookies,我们像正常访问一个网页去访问新教务系统登录页面:
String url_login = "https://202-204-74-178.webvpn.ncepu.edu.cn/jwglxt/xtgl/login_slogin.html";
Document document = Jsoup.connect(url_login).get();
System.out.println(document);
那么很不幸,打印出来的是内网的登录界面,也就是说:我们被强制退出了内网。
模拟登录新教务系统比较复杂,换成访问中国知网:
public static void get_cnki(Map<String, String> cookies) throws IOException {
String url = "https://www-cnki-net-443.webvpn.ncepu.edu.cn/";
Connection connection = Jsoup.connect(url).cookies(cookies);
connection.header("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36"); // 配置模拟浏览器
Response res = connection.execute(); // 获取响应
Document d = Jsoup.parse(res.body());
System.out.println(d);
}
内容过长,不再显示。
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/Cyril_KI/article/details/108173210
内容来源于网络,如有侵权,请联系作者删除!