运行这个代码之后,总是报Object moved to here.改了一天了,总是不行教务网登录页面:http://202.200.112.200/(jqynnd55v32i2555oe0vhfeh)/default2.aspx
测试账号:3130421010 密码:w8101923
<?php  function curl_request($url,$post='',$cookie='', $returnCookie=0){
         $curl = curl_init();
         header("Content-Type:text/xml;charset=utf-8");
         curl_setopt($curl, CURLOPT_URL, $url);
         curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)');
         curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
         curl_setopt($curl, CURLOPT_AUTOREFERER, 1);
         curl_setopt($curl, CURLOPT_REFERER, "http://202.200.112.200/(jqynnd55v32i2555oe0vhfeh)/default2.aspx");
         if($post) {
             curl_setopt($curl, CURLOPT_POST, 1);
             curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post));
         }
     
         curl_setopt($curl, CURLOPT_COOKIE, $cookie);
         curl_setopt($curl, CURLOPT_COOKIEJAR, $cookie_file);
         curl_setopt($curl, CURLOPT_HEADER, $returnCookie);
         curl_setopt($curl, CURLOPT_TIMEOUT, 10);
         curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
         $data = curl_exec($curl);
         if (curl_errno($curl)) {
             return curl_error($curl);
         }
         curl_close($curl);
         return $data;        
 } function getView(){
      $res;
      $url = "http://202.200.112.200/(jqynnd55v32i2555oe0vhfeh)/default2.aspx";
      $result = curl_request($url);
      //print_r($result);
      $pattern = '/<input type="hidden" name="__VIEWSTATE" value="(.*?)" \/>/is';
      preg_match_all($pattern, $result, $matches);
      $res[0] = $matches[1][0];
      return $res[0];
 } function login($VS){
      $url = 'http://202.200.112.200/(jqynnd55v32i2555oe0vhfeh)/default2.aspx';
      $post['__VIEWSTATE'] = $VS;
      $post['txtUserName'] = '3130414028';
      $post['TextBox2'] = 'AMDR91652,!';
      $post['txtSecretCode'] = '';
      $post['RadioButtonList1'] = '学生';
      $post['Button1'] = '登录';
      $post['lbLanguage'] = '';
      $post['hidPdrs'] = '';
      $post['hidsc'] = '';
      $result = curl_request($url,$post,'', 1);
      print_r($post);
      echo '<br >'.'<br />';
      //print_r($result);
      return $result;
 } $a = getView();
//echo $a;
 $L = login($a);
//$cookie = $L[cookie];
 //登陆主页
 $url = 'http://202.200.112.200/(jqynnd55v32i2555oe0vhfeh)/default2.aspx';
 $result = curl_request($url,'',$cookie);  
 print_r($result);
 ?> 

解决方案 »

  1.   

    学生不是理由。你觉得呢
    <?php
    $cookie_file='3130421010.txt';
    $post='__VIEWSTATE=dDwyODE2NTM0OTg7Oz6VFjudSGcC80TgjSlFWI%2FmCgtPMw%3D%3D&txtUserName=3130421010&TextBox2=w8101923&RadioButtonList1=%D1%A7%C9%FA&Button1=&lbLanguage=&hidPdrs=&hidsc=';
    // 初始化
    $curl = curl_init('http://202.200.112.200/(sl0nq045kme0r2ziestbti45)/default2.aspx');
    $header = array();
    $header[]='Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8';
    $header[]='Accept-Encoding: gzip, deflate';
    $header[]='Accept-Language: zh-CN,zh;q=0.8';
    $header[]='Cache-Control: max-age=0';
    $header[]='Connection: keep-alive';
    $header[]='Content-Type: application/x-www-form-urlencoded';
    $header[]='Host: 202.200.112.200';
    $header[]='Referer: http://202.200.112.200/(sl0nq045kme0r2ziestbti45)/default2.aspx';
    $header[]='Upgrade-Insecure-Requests: 1';
    $header[] = 'User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36';
    curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
    // 不输出header头信息
    curl_setopt($curl, CURLOPT_HEADER, 0);
    // 保存到字符串而不是输出
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLOPT_COOKIEJAR,  $cookie_file); //存储cookies
    // post数据
    curl_setopt($curl, CURLOPT_POST, 1);
    // 请求数据
    curl_setopt($curl, CURLOPT_POSTFIELDS, $post);
    // 是否抓取跳转后的页面
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
    $response = curl_exec($curl);
    curl_close($curl);
    echo iconv('gb2312','utf-8',$response);