시작하기


QueyList를 사용하려면 규칙 베이스를 작성한 다음 QueryList의 정적 메서드 Query에 규칙 베이스를 전달하기만 하면 됩니다. QueryList는 규칙 베이스에 따라 자동으로 모든 콘텐츠를 다시 수집합니다. QueryList의 전체 과정은 매우 간단합니다!

룰 베이스의 작성 규칙은 다음과 같습니다(간단 모드):

$rules = array(
   '规则名' => array('jQuery选择器','要采集的属性'),
   '规则名2' => array('jQuery选择器','要采集的属性'),
    ..........
);

한번 사용해 보겠습니다.

  1. Collection 대상, 다음 코드 스니펫
$html = <<<STR
<div id="one">
   <div class="two">
       <a href="http://querylist.cc">QueryList官网</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. 컬렉션 규칙 작성

$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官网
   其它的一些文本
           [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官网</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);