递归多级采集的一个问题
想把路径拼全,使用querylist如何拼呢?? `
$html =<<<STR
$data = QueryList::html($html)->rules(array(
'title' => array('h3','text'),
'list' => array('.list','html')
))->range('#demo li')->queryData(function($item) {
// 注意这里的QueryList对象与上面的QueryList对象是同一个对象
// 所以这里要重置range()参数,否则会共用前面的range()参数,导致出现采集不到结果的诡异现象
$item['list'] = QueryList::html($item['list'])->rules(array(
'item' => array('.item','text')
))->range('')->queryData();
// 拼接item !!!
$item['list'] = array_map(function($value) use( $item ) {
$value['item'] = $item['title']. "/" .$value['item'];
return $value;
}, $item['list']);
return $item;
});
print_r($data);
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。