跳转到主内容
趣航编程网 - 趣学编程,启航技术之路!

模拟登陆正方教务系统,重定向一直解决不了〉

回复讨论(解决方案) 在线等,拜托各位 返回  这个网站没有使用 cookie 传递 sessionid 而是通过 url 传递的 所以你把这个写死是不行的: http://jwxt.nbut.cn /(gnqj51blynlz1k45ufftjgux)/default_ysdx.aspx 而是应这样写
$url = 'http://jwxt.nbut.cn';$u = get_headers($url, 1);$login_url = 'http://jwxt.nbut.cn' . dirname($u['Location']) . '/default_ysdx.aspx';
另外提交的参数应是关联数组,而非下标数组
$post_fields = array( 'TextBox1' => $user = '11480010126', 'TextBox2' => 'tianyun', 'RadioButtonList1' => '学生', '__VIEWSTATE' => 'dDw1MjQ2ODMxNzY7Oz5PMj6WMeVIzgWyGp6TS4sLvnQtaA==', "Button1" => " 登录 ",);
注意:要使用 gbk 编码的 所以并不是重定向的问题,而是你根本就没有登录上去 用于现在返回的是 密码错误,所以无法再观察第二段 curl 的情况了 很多大学都用正方教务系统么?我们学校也是哎 2楼已经分析的很正确,我只作解释! 当输入网址http://jwxt.nbut.cn,服务端会重定向到一个网页,也就是在http://jwxt.nbut.cn后加上/随机串/default_ysdx.aspx,这个随机串存储到服务端的。所以你写死就是不正确的。 首先请求网址http://jwxt.nbut.cn。获取响应头中的Location,如图: 然后拼接你的url,再次访问http://jwxt.nbut.cn/Location/default_ysdx.aspx网址。这是一点。 2:查看源代码 提交的参数是关联数组,并非下表数组。 截部分图: 上面完成了!你就登录成功了。 我们学校也是这玩意== 但我用python写的时候怎么获取那个Location呢,谢谢 手动@二楼 @四楼

相关文章