0

第一次能采集到,第二次报错 未定义数组下标: 0
第三次又可以采集,这样交替出现问题。
代码如下,log出来没发现什么问题。

public function getOneTitle($content_html){
    //采集规则
    $content_rules = [
        'title' => array('title', 'text')  //文章标题
    ];
    $content_ql = $this->ql->html($content_html)->rules($content_rules)->query();
    $query = $content_ql->getData();
    $data = $query->all();
    if(empty($query->all()[0])){
        Log::write('详情1>>>'.$content_html."<<<<<1详情end");
        $html2 = $content_ql->getHtml();
        Log::write('详情2>>>'.$html2."<<<<<2详情end");
        var_dump($data);
    }
    $content = $data[0]['title'];

    return $content;
}
2018-01-18 提问
2 个回答
0

第一次和第二次采集的是同样的内容吗?把$query->all()打印出来看看, 第二次应该是没有选择到内容

0

这个问题,我也出现过,用getHtml是查获取是正常,但将获取 内容在ql->html()中加载,有时加载得上,有时会加载不到。非常奇怪的问题。如果只是看程序,这么几行,似乎没有问题。应该是querylist设计上的问题,后面将处理写为插件方式进行调用,就没有再出现过问题了。

撰写答案

你可能感兴趣的

推广链接