search

Home  >  Q&A  >  body text

php - 如何模拟抓取四六级查询成绩(99宿舍网)

最近在做一个微信上查询四六级成绩的功能,学信网可以抓取,但是爬了1000左右后,就会出现验证码,只好放弃这个方法。有人可以从99宿舍网爬取,但他们不愿意告知,求大神告知具体方法。

PHP中文网PHP中文网2817 days ago392

reply all(2)I'll reply

  • 大家讲道理

    大家讲道理2017-04-10 16:32:54

    做了个DEMO:http://cet.zy62.com/

    使用方法$rs = cet('姓名','准考证号'); var_dump($rs);

    function cet($name,$id){
        $name = urlencode(mb_convert_encoding($name, 'gb2312', 'utf-8'));
        $post = 'id=' . $id . '&name=' . $name;
        $url = "http://cet.99sushe.com/findscore";
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_REFERER, "http://cet.99sushe.com/");
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_NOBODY, false);
        $str = curl_exec($ch);
        curl_close($ch);
        $str = iconv("GB2312", "UTF-8", $str);
        if (strlen($str) < 10) {
            return false;
        }
        return explode(',', $str);
    }

    微信版本:

    reply
    0
  • 巴扎黑

    巴扎黑2017-04-10 16:32:54

    遇到验证码,可能是你的爬虫没有换Ip。那就1000左右的时候更换IP继续爬就OK了。简单的验证码是可以破解的。

    reply
    0
  • Cancelreply