跳转至内容
0
  • 版块
  • 讨论
  • 最新
  • 标签
  • 热门
  • 顶端
  • 用户
  • 版块
  • 讨论
  • 最新
  • 标签
  • 热门
  • 顶端
  • 用户
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(Zephyr)
  • 不使用皮肤
折叠
JIKE社区
  1. 首页
  2. 讨论区
  3. 水区乐园
  4. 职教云自动签到

职教云自动签到

已定时 已固定 已锁定 已移动 水区乐园
4 帖子 3 发布者 442 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • 暖 离线
    暖 离线
    暖阳
    写于 最后由 编辑
    #1

    职教云自动签到PHP脚本
    如果有不会搞的,我可以帮忙签到
    账号+密码+要签到的时间
    senye666@foxmail.com

    <?php
    /*
    *------------------------------------------------------
    * Title : 职教云自动签到PHP版 V3.0
    *------------------------------------------------------
    * Author : 青山 (qingshan@88.com)
    *------------------------------------------------------ 
    * Time : 2020-08-23
    *------------------------------------------------------
    * Tips : 本源码不得贩卖
    *------------------------------------------------------
    */
    
    
    header('content-type:text/html;charset=UTF-8');
    date_default_timezone_set("PRC");
    
    
    /*
    **获取GET参数 让用户自定义签到频率 
    */
    $skey=$_GET['skey'];//qq推送
    $userName=$_GET['userName'];//账号
    $userPwd=$_GET['userPwd'];//密码
    
    
    
    /*
    **跟随更新协议头
    */
    $emit=time()."000";
    //echo date('Y-m-d H:i:s');
    $equipmentModel="Xiaomi Redmi K20 Pro";
    $equipmentApiVersion="10";
    $equipmentAppVersion="2.8.29";
    $device=getDevice($equipmentModel,$equipmentApiVersion,$equipmentAppVersion,$emit);
    //header        
    $headers = array('Content-Type:'.'application/x-www-form-urlencoded','emit:'.$emit,'device:'.$device);       
    //print_r($header);
    
    
    
    
    /*
    **自动签到部分
    */
    //login                
    $url="https://zjyapp.icve.com.cn/newMobileAPI/MobileLogin/newSignIn";
    $data=array("clientId"=>"d902c875d5f34c0f93362139f5af0c4c","sourceType"=>"2","userPwd"=>$userPwd,"userName"=>$userName,"appVersion"=>$equipmentAppVersion,"equipmentAppVersion"=>$equipmentAppVersion,"equipmentApiVersion"=>$equipmentApiVersion,"equipmentModel"=>$equipmentModel);
    //print_r($data);
    $output=httppost($url,$headers,$data);
    //print_r($output);;
    
    
    if($output['code'] == "1"){
        $stuId = $output["userId"];
        $newtoken=$output['newToken'];
            $faceDate = date("Y-m-d");
            //echo $stuId;
            
    //get jrkt        
    $url2="https://zjyapp.icve.com.cn/newmobileapi/faceteach/getStuFaceTeachList";
    //$data="stuId={$stuId}&faceDate={$faceDate}&newToken={$newtoken}";
    
    $data=array("stuId"=>$stuId,"faceDate"=>$faceDate,"newToken"=>$newtoken);
    $output=httppost($url2,$headers,$data);
    //print_r($output);
            $todayClassInfo=$output["dataList"];
            
    //        
    $url3="https://zjyapp.icve.com.cn/newmobileapi/faceteach/newGetStuFaceActivityList";
    if(!empty($todayClassInfo)){
                    foreach($todayClassInfo as $i){
                            $data=array("activityId"=>$i['Id'],"stuId"=>$stuId,"classState"=>$i['state'],"openClassId"=>$i['openClassId'],"newToken"=>$newtoken);
            
    $output=httppost($url3,$headers,$data);
    //print_r($output);                
    $inClassInfo=$output["dataList"];
    
    //
    $url4="https://zjyapp.icve.com.cn/newmobileapi/faceteach/isJoinActivities";
            if(count($inClassInfo) != "0"){
                            foreach($inClassInfo as $n){
                                     if ($n["DataType"] == "签到" and $n["State"] !== "3"){
                                     $attendData = array("activityId"=>$i['Id'],"openClassId"=>$i['openClassId'],"stuId"=>$stuId,"typeId"=>$n['Id'],"type"=>"1","newToken"=>$newtoken);
            $output=httppost($url4,$headers,$attendData);
        //print_r($output);
            $attendInfo=$output;
            
            
    $url5="https://zjyapp.icve.com.cn/newmobileapi/faceteach/saveStuSign";
                            if($attendInfo["isAttend"] != "1"){
                            $signInData = array("signId"=>$n['Id'],"stuId"=>$stuId,"openClassId"=>$i['openClassId'],"sourceType"=>"3","checkInCode"=>$n['Gesture'],"activityId"=>$i['Id'],"newToken"=>$newtoken);
                                            $output=httppost($url5,$headers,$signInData);
                                            $time=date("Y-m-d H:i:s");
                                            echo '账号:'.$userName.'的'.$i["courseName"]." ".$time." ".$output["msg"]."\r\n";
                                            $url6="https://push.xuthus.cc/send/{$skey}?c=账号:{$userName}的{$i['courseName']}签到成功\n\n";
                                $output=file_get_contents($url6);
                                            
                                                    }else{
                                                            echo"账号:".$userName."的".$n['DateCreated'].$i["courseName"]."的签到已经签到!"."<br>";
                                                            
                                                    };
                                            }else{
                                                    if($n["DataType"] == "签到"){
                                                    echo  "状态:".$output['code']."账号:".$userName."的".$n['DateCreated'].$i["courseName"]."的签到已经签到!"."<br>";
                                                        
                                                    };
                                            };
                                    };
                            };
                    };        
            }else{
                    echo "状态:".$output['code']."账号:".$userName."今日没有课唉 要好好休息哦"."<br>";
            };
            }else{
                echo $output['msg'];
                
            }
            
            
            
    /*
    **核心函数 请勿更改
    */
    function httppost($url,$headers,$data){
                    $curl=curl_str();
                    curl_setopt($curl, CURLOPT_URL, $url);
                    curl_setopt($curl, CURLOPT_HEADER, 0); 
            curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); 
            curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); 
            curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($curl,CURLOPT_HTTPHEADER,$headers);
                    
                    curl_setopt($curl, CURLOPT_POST, 1);
                            
            curl_setopt($curl, CURLOPT_POSTFIELDS,http_build_query($data));
                    
            $output = curl_exec($curl);
                    
            curl_close($curl);
                    $output=json_decode($output,true);
            return $output;
                    //print_r($output);
    } 
    
    function curl_get($url,$headers,$data,$cookie){
                    $curl=curl_init();
                    curl_setopt($curl, CURLOPT_URL, $url);
                    curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
            curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); 
            curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); 
            curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($curl,CURLOPT_HTTPHEADER,$headers);
                    curl_setopt($curl,CURLOPT_COOKIE,$cookie);
                    //curl_setopt($curl, CURLOPT_POST, 1);
                    
            //curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
                    
            $output = curl_exec($curl);
                    
            curl_close($curl);
                    $output=json_decode($output,true);
            return $output;
                    //print_r($output);
    }
    
    function curl_post($url,$headers,$data,$cookie){
                    $curl=curl_init();
                    curl_setopt($curl, CURLOPT_URL, $url);
            curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); 
            curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); 
            curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($curl,CURLOPT_HTTPHEADER,$headers);
                    curl_setopt($curl,CURLOPT_COOKIE,$cookie);
                    curl_setopt($curl, CURLOPT_POST, 1);
                    
            curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
                    
            $output = curl_exec($curl);
                    
            curl_close($curl);
                    $output=json_decode($output,true);
            return $output;
                    //print_r($output);
    }
    
    
    
    
    
    
    function post_curl($url, $params=[], $headers=[]){   
        $httpInfo = array();   
        $ch = curl_init();      
        curl_setopt($ch, CURLOPT_HEADER, 1);   
        curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
        curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 30 );   
        curl_setopt( $ch, CURLOPT_TIMEOUT , 30);   
        curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );      
        curl_setopt( $ch , CURLOPT_POST , true );   
        curl_setopt( $ch , CURLOPT_POSTFIELDS , http_build_query($params));   
        curl_setopt( $ch , CURLOPT_URL , $url );        
        $response = curl_exec( $ch );   
        if ($response === FALSE) {      
            return false;   
            
        }        
        curl_close( $ch );    
        return $response;
        
    }
    //
    function object_array($array) {  
        if(is_object($array)) {  
            $array = (array)$array;  
         } if(is_array($array)) {  
             foreach($array as $key=>$value) {  
                 $array[$key] = object_array($value);  
                 }  
         }  
         return $array;  
    }
    
    function getDevice($model,$vsersionAndroid,$versionName,$timeStamp){
        $tmp=md5($model);
        //echo $tmp."<br>";
        $tmp1=$tmp.$vsersionAndroid;
        //echo $tmp."<br>";
        $tmp=md5($tmp1);
        //echo $tmp."<br>";
        $tmp1=$tmp.$versionName;
        //echo $tmp."<br>";
        $tmp=md5($tmp1);
        //echo $tmp."<br>";
        $tmp1=$tmp.$timeStamp;
        //echo $tmp."<br>";
        return md5($tmp1);
    }
    

    脚本仅供学习参考,如有学习以外任何事情,本人概不负责。

    1 条回复 最后回复
    1
    • Y 离线
      Y 离线
      yyy
      🍌
      写于 最后由 编辑
      #2

      这个云做什么用的

      1 条回复 最后回复
      0
      • 暖 离线
        暖 离线
        暖阳
        写于 最后由 编辑
        #3

        职教云不知道吗?

        1 条回复 最后回复
        0
        • T 离线
          T 离线
          tammy
          写于 最后由 编辑
          #4

          干嘛用的呀

          1 条回复 最后回复
          0
          回复
          • 在新帖中回复
          登录后回复
          • 从旧到新
          • 从新到旧
          • 最多赞同


          Popular Topics - 热门主题
          • Win 10 RTM Professional Volume:MAK (Activation Count: 1477)
            UntitledN
            Untitled
            0
            4
            106

          • 京东调研得京豆
            K
            kevin
            0
            2
            170

          • 多人有声剧《北岭怪谈》主播:一路听天下 995集完
            undefined
            0
            1
            1

          • 多人有声剧《废材的我突然有了亿万修为》主播:六零一听书 1110集完
            undefined
            0
            1
            1

          • 多人有声剧《姑娘她戏多嘴甜》主播:梁小渔 837集完
            undefined
            0
            1
            1

          • 有声小说《我的冰山美女老婆》主播:有乐听书 1880集完
            undefined
            0
            1
            1

          • 登录

          • 没有帐号? 注册

          • 登录或注册以进行搜索。
          百度网盘
          2,299 个主题
          夸克网盘
          1,196 个主题
          连续剧
          938 个主题
          国产剧
          695 个主题
          美剧
          443 个主题
          中国移动
          307 个主题
          动画片
          294 个主题
          动作片
          273 个主题

          70

          在线

          42.2k

          用户

          42.4k

          主题

          113.3k

          帖子
          • 第一个帖子
            最后一个帖子