记录学习与后端知识并分享学习代码过程(会飞的鱼Blog)

HostLoc论坛自动签到脚本

会飞的鱼 0 1135 2021年1月30日

记录一下省的下回找不到.

<?php

$lines = file(dirname(__FILE__).'/list.txt');

foreach($lines as $line){
        list($username, $password) = explode('#', $line);
        $username = trim($username);
        $password = trim($password);
        if(empty($username) || empty($password)){
                continue;
        }

        $suburl = "https://www.hostloc.com/member.php?mod=logging&action=login";
        $loginInfo = array(
                "fastloginfield" => "username",
                "username" => $username,
                "password" => $password,
                "quickforward" => "yes",
                "handlekey" => "ls",
                "loginsubmit" => true
        );

        echo "login($username) ... ";
        $login = curl_post($suburl,$loginInfo);

        if(strpos($login, $username) !== FALSE){

                preg_match("/>用户组: (.*?)<\/a>/", $login, $preg);
                $group = $preg[1];
                echo "Success!($group)\n";
        }else{
                echo "Failed!\n\n";
                continue;
        }
        extract(get_jf());
        echo "Credit: $credit; Money: $money\n";

        echo "Visting user space ";
        for($i=0;$i<20;$i++){
                $uid = mt_rand(10000,20000);
                curl_get('https://www.hostloc.com/space-uid-'.$uid.'.html');
                sleep(1);
                echo ".";
        }
        echo " done!\n";
        extract(get_jf());
        echo "Credit: $credit; Money: $money\n\n";

}

function get_jf(){
        $data = array();
        $html = curl_get("https://www.hostloc.com/home.php?mod=spacecp&ac=credit&op=base");
        preg_match("/积分: (\d+)<\/a>/", $html, $preg);
        if(!empty($preg[1])){
                $data['credit'] = $preg[1];
        }else{
                $data['credit'] = 0;
        }
        preg_match("/金钱: <\/em>(\d+)/", $html, $preg);
        if(!empty($preg[1])){
                $data['money'] = $preg[1];
        }else{
                $data['money'] = 0;
        }

        return $data;
}

function curl_post($url, $post_data){
    $ch = curl_init ();
    curl_setopt($ch, CURLOPT_POST , 1);
    curl_setopt($ch, CURLOPT_HEADER , 0);
    curl_setopt($ch, CURLOPT_URL , $url);
    curl_setopt($ch, CURLOPT_COOKIEJAR , '/tmp/hostloc.cookie');
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-FORWARDED-FOR:'.rand_ip())); 
    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible;Baiduspider-render/2.0; +http://www.baidu.com/search/spider.html)');
    curl_setopt($ch, CURLOPT_POSTFIELDS , $post_data);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); 
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    //curl_setopt($ch, CURLOPT_TIMEOUT,6000);
    curl_setopt($ch, CURLOPT_REFERER, 'https://www.hostloc.com/');
    $result = curl_exec($ch);
    curl_close($ch);
    return $result;
}

function curl_get($url){
    $ch = curl_init ();
    curl_setopt($ch, CURLOPT_HEADER , 0);
    curl_setopt($ch, CURLOPT_URL , $url);
    curl_setopt($ch, CURLOPT_COOKIEFILE, '/tmp/hostloc.cookie');
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-FORWARDED-FOR:'.rand_ip())); 
    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible;Baiduspider-render/2.0; +http://www.baidu.com/search/spider.html)');
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_TIMEOUT,6000);
    $result = curl_exec($ch);
    curl_close($ch);
    return $result;
}

function rand_ip(){
    return rand(1,255).'.'.rand(1,255).'.'.rand(1,255).'.'.rand(1,255);
}

另存为 loc.php

新建一个 list.txt

格式为:

账号#密码
账号#密码....
本文由 @会飞的鱼 于 2021-1-30 发布在 会飞的鱼Blog,如无特别说明,本博文章均为原创,转载请保留出处。

网友评论

    暂无评论

会飞的鱼 在线咨询

在线时间:9:00-22:00
周六、周日:14:00-22:00