開始使用
使用QueyList只需要編寫規(guī)則庫,然后把規(guī)則庫傳給QueryList的靜態(tài)方法Query,QueryList就會自動按照規(guī)則庫把內容全部采集回來了,而規(guī)則庫是用jQuery選擇器來編寫的,所以使用QueryList的整個過程非常簡單!
規(guī)則庫的編寫規(guī)則如下(簡單模式):
$rules = array( '規(guī)則名' => array('jQuery選擇器','要采集的屬性'), '規(guī)則名2' => array('jQuery選擇器','要采集的屬性'), .......... );
下面我們來動手試試吧:
- 采集目標,下面的代碼片段
$html = <<<STR <div id="one"> <div class="two"> <a href="http://querylist.cc">QueryList官網(wǎng)</a> <img src="http://querylist.com/1.jpg" alt="這是圖片"> <img src="http://querylist.com/2.jpg" alt="這是圖片2"> </div> <span>其它的<b>一些</b>文本</span> </div> STR;
2.編寫采集規(guī)則
$rules = array( //采集id為one這個元素里面的純文本內容 'text' => array('#one','text'), //采集class為two下面的超鏈接的鏈接 'link' => array('.two>a','href'), //采集class為two下面的第二張圖片的鏈接 'img' => array('.two>img:eq(1)','src'), //采集span標簽中的HTML內容 'other' => array('span','html') );
3.開始采集
$data = QueryList::Query($html,$rules)->data; //打印結果 print_r($data);
結果如下:
Array ( [0] => Array ( [text] => QueryList官網(wǎng) 其它的一些文本 [link] => http://querylist.cc [img] => http://querylist.com/2.jpg [other] => 其它的<b>一些</b>文本 ) )
如果上面的代碼你看懂了,那么恭喜你,你已經成功掌握了QueryList了!
下面是完整代碼:
<?php require 'QueryList/vendor/autoload.php'; use QL\QueryList; $html = <<<STR <div id="one"> <div class="two"> <a href="http://querylist.cc">QueryList官網(wǎng)</a> <img src="http://querylist.com/1.jpg" alt="這是圖片"> <img src="http://querylist.com/2.jpg" alt="這是圖片2"> </div> <span>其它的<b>一些</b>文本</span> </div> STR; $rules = array( //采集id為one這個元素里面的純文本內容 'text' => array('#one','text'), //采集class為two下面的超鏈接的鏈接 'link' => array('.two>a','href'), //采集class為two下面的第二張圖片的鏈接 'img' => array('.two>img:eq(1)','src'), //采集span標簽中的HTML內容 'other' => array('span','html') ); $data = QueryList::Query($html,$rules)->data; print_r($data);