抓取網頁數據后 數據錄入到discuz中
<?php include('simple_html_dom.php'); function urlText(){ $url = 'http://www.kxt.com/data/3.html';//外匯 $ch=curl_init(); $timeout = 1; // echo CURLOPT_URL; // CURLOPT_URL: 這是你想用PHP取回的URL地址。你也可以在用curl_init()函數初始化時設置這個選項 curl_setopt($ch, CURLOPT_URL, $url); // echo CURLOPT_RETURNTRANSFER; //使用PHP curl獲取頁面內容或提交數據,有時候希望返回的內容作為變量儲存,而不是直接輸出。這個時候就必需設置curl的CURLOPT_RETURNTRANSFER選項為1或true。 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // CURLOPT_CONNECTTIMEOUT用來告訴PHP腳本在成功連接服務器前等待多久(連接成功之后就會開始緩沖輸出),這個參數是為了應對目標服務器的過載,下線,或者崩潰等可能狀況; curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); // 可以將他返回的內容賦值給一個變量。只需再前面加上,curl_setopt($ch,CUROPT_RETURNTRANSFER,1);就可以將返回結果賦值給變量了。 // // 比如,$r=curl_exec($ch);這時返回的結果全部包含再$r中,想什么時候輸出什么時候輸出,如果不准備要他的結果,那么就將前面的1換成0 $lines_string=curl_exec($ch); // print_r($lines_string); curl_close($ch); //提取table $dom = new simple_html_dom(); $dom->load($lines_string); $ret = $dom->find(".dataList ul",1)->innertext; //數據分析 // print_r($ret); return $ret; } $ret = urlText(); // print_r($ret); die; $arr = explode("</li>",$ret); //一維數組 // echo '<pre>'; // print_r($arr); die; $list = $datatime = array(); if(!empty($arr)){ foreach($arr as $k=>$val){ // print_r($val); $list = explode("</span>",$val); //二維數組 // echo '<pre>'; // print_r($list);die; // // 數組$param 下標和數據庫中字段對應 $param = array( 'lmci_dateline' =>str_arr($list[0]), //[lmci_dateline] => 1438358401 'lmci_befor'=>trim(strip_tags($list[2])), 'lmci_publish'=>trim(strip_tags($list[3])), 'lmci_baiyin'=>trim(strip_tags($list[4])), 'lmci_yuanyou'=>trim(strip_tags($list[5])), 'lmci_date'=>trim(strip_tags($list[0])), //日期 [lmci_date] => 2015年08月 ); // echo '<pre>'; // print_r($param); // if($param['lmci_dateline']!=''){ // 執行 插入到數據庫中 // C::t('common_lmci')->insert($param, true); } } } function str_arr($str){ $array = explode("年", strip_tags($str)); // echo '<pre>'; // print_r($array); $arr['year'] = $array[0]; $arr['month'] = str_replace("月", '',$array[1]); echo '<pre>'; print_r($arr); $data = mktime(00, 00, 01, $arr['month'] , 1, $arr['year']); return $data; } ?>