예제 #1
0
 private function _tryGetItools($url, $count = 3)
 {
     $result = Crawler::curl($url);
     //$result = file_get_contents(Yii::app()->basePath . '/itools.html');
     if ($result) {
         phpQuery::newDocumentHtml($result);
         $bestLis = pq('#daySelectCon ul.ios_app_list li');
         $this->_itoolsSave($bestLis, 11);
         $softLis = pq('.ios_box:eq(2)')->find('ul.ios_app_list li');
         $this->_itoolsSave($softLis, 12);
         return true;
     } elseif ($count !== 0) {
         $count--;
         sleep(1);
         return $this->_tryGetItools($url, $count);
     }
     return false;
 }
예제 #2
0
 private function _tryGetAishiData($url, $page, $pagesize = 20, $count = 3)
 {
     $url = $url . '&pageno=' . $page;
     $xml = Crawler::curl($url);
     $have_utf = false;
     if (strpos($xml, 'UTF-8') != false) {
         $have_utf = true;
     }
     if (strpos($xml, 'utf-8') != false) {
         $have_utf = true;
     }
     if ($have_utf == false) {
         return array();
     }
     $xml = simplexml_load_string($xml);
     if ($xml) {
         //首页banner入库
         if ($page == 1 && isset($xml->adlist)) {
             $b = 0;
             foreach ($xml->adlist->adinfo as $v) {
                 $banner['title'] = $v->name;
                 $banner['ranking'] = ++$b;
                 $banner['type'] = 13;
                 $banner['searchtime'] = date("Y-m-d H:i:s");
                 $tongji = new TongjiData();
                 $tongji->insertData($banner);
             }
         }
         $k = 0;
         foreach ($xml->applist->app as $v) {
             $datas[$k]['title'] = $v->appname;
             $datas[$k]['ranking'] = ($page - 1) * $pagesize + $k + 1;
             $k++;
         }
         return $datas;
     } elseif ($count !== 0) {
         $count--;
         sleep(1);
         return $this->_tryGetAishiData($url, $page, $count);
     }
     return array();
 }