load->model('dms/dms_clues_model','dms_clues_model'); $this->log_dir = 'dms'; $this->file_name = 'clues.txt'; } public function get_clues() { //登录态缓存文件 $loginResultFile = APPPATH . "cache/loginRes.txt"; $autoLogin = new CurlAutoLogin(); //已有登录态,则直接读取登录态,避免多次重复登录 if (!file_exists($loginResultFile)) { $resArr = $this->doLogin($autoLogin, $loginResultFile); } else { debug_log("有登录态,自动登录...\n", $this->file_name, $this->log_dir); $resArr = json_decode(file_get_contents($loginResultFile), true); } if (empty($resArr['username'])) { debug_log("未登录成功...\n", $this->file_name, $this->log_dir); exit("未登录成功\n"); } $token = $resArr['token']; $pageIndex = 1; $pageSize = 30; $dollor = '$'; $createdDateStart = date("Y-m-d H:i:s", strtotime("-1 minute")); $createdDateEnd = date("Y-m-d H:i:s", strtotime("now")); debug_log("开始时间: ".$createdDateStart." ", $this->file_name, $this->log_dir); debug_log("截止时间: ".$createdDateEnd." ", $this->file_name, $this->log_dir); $curl = <<execCurl($curl); $resArr = json_decode($content, true); if (!$resArr['result']) { $this->doLogin($autoLogin, $loginResultFile); } if(!$resArr['data']['clueServerQueryFromDlr']['rows']){ debug_log("无新增数据\n", $this->file_name, $this->log_dir); exit; }else{ debug_log("共 ".$resArr['data']['clueServerQueryFromDlr']['records']." 条新增数据\n", $this->file_name, $this->log_dir); } foreach ($resArr['data']['clueServerQueryFromDlr']['rows'] as $k => $v) { $add = array( 'c_id' => $v['serverOrder'], 'name' => $v['custName'], 'mobile' => $v['contactTel'], 'cfrom1' => $v['infoChanMName'], 'cfrom2' => $v['infoChanDName'], 'jsondata' => json_encode($v, JSON_UNESCAPED_UNICODE), 'c_time' => strtotime($v['createdDate']) ); $this->dms_clues_model->add($add); } } private function doLogin($autoLogin, $loginResultFile) { echo "无登录态,模拟登录...\n"; debug_log("无登录态,模拟登录...\n", $this->file_name, $this->log_dir); $curl = <<execCurl($curl); $resArr = json_decode($content, true); file_put_contents($loginResultFile, $content); //存储登录结果 return $resArr; } }