header("content-type:text/html;charset=utf-8");
采集
$url="http://gongyi.QQ.com/?ptlang=2052&ADUIN=421644867&ADsession=1481333812&ADTAG=CLIENT.QQ.5503_.0&ADPUBNO=26642";$atr=file_get_contents($url);
数据信息转码
$atr = mb_convert_encoding($atr, 'utf-8', 'GBK');// var_dump($atr);die;
页面的一个div匹配
$PRe='#<div class="Q-tpList">.*</div>#is'; preg_match($pre,$atr,$data);// var_dump($data);die;
div里面的标题数据信息匹配
// $res1 = '#<em class=".*"><a target=".*" href="(.*)">(.*)</a></em>#isU'; $res1='#<em class="title"><a target="_blank" href=".*">(.*)</a></em>#isU'; preg_match_all($res1,$data[0],$ree);// var_dump($ree);
div里的第二个数据信息图片的表题
$res2 = '#<a class="pic" target=".*" href=".*"><img width="200" height="130" src="(.*)"></a>#isU'; preg_match_all($res2,$data[0],$ree2); // var_dump($ree2); div里第三个标题是的匹配数据信息的处理 $res3='#<div class="newsContent" style="display:none">(.*)</div>#isU'; preg_match_all($res3,$data[0],$ree3); // var_dump($ree3); // $str =''; 数组的处理[1]带标签[2]内容 $arr=array(); for ($i=0; $i<count($ree2[1]); $i++) { $arr[]=['title'=>$ree[1][$i], 'img'=>$ree2[1][$i], 'content'=>$ree3[1][$i] ]; }// var_dump($arr);
这里是采用yii框架入库
$connection = /Yii::$app->db; foreach ($arr as $key => $val) { $connection->createCommand()->insert('cai', [ 'title' => $val['title'], 'content' =>$val['content'], 'img' => $val['img'] ])->execute(); } }新闻热点
疑难解答