Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使用简单的HTMLDOM和cURL排除依赖于特定类的子类的刮取结果?_Php_Curl_Web Scraping_Simple Html Dom - Fatal编程技术网

Php 如何使用简单的HTMLDOM和cURL排除依赖于特定类的子类的刮取结果?

Php 如何使用简单的HTMLDOM和cURL排除依赖于特定类的子类的刮取结果?,php,curl,web-scraping,simple-html-dom,Php,Curl,Web Scraping,Simple Html Dom,我正在抓取某个网站的特定链接,并将其保存到我的$url\u结果数组中。但是,如果li集群的类为list-items\uuuuu item,包含一个子->子->子span以及一个类为list-items\uuuu item\uu的通知,则希望排除向数组添加链接 我正在刮取的群集: <li> <a href="" data-lpurl=""> <!--The href I am scraping--> <span class="lis

我正在抓取某个网站的特定链接,并将其保存到我的$url\u结果数组中。但是,如果li集群的类为list-items\uuuuu item,包含一个子->子->子span以及一个类为list-items\uuuu item\uu的通知,则希望排除向数组添加链接

我正在刮取的群集:

<li>
    <a href="" data-lpurl=""> <!--The href I am scraping-->
        <span class="list-items__item__position"></span>
        <div class="list-items__item__title">
            <span class="list-items__item__notice"> <!--I don't want to add to my array if this span is present-->
            </span>
        </div>
    </a>
</li>
$items = $html->find('li[class=list-items__item]');  
foreach($items as $post) {
    $url_results[] = $url . ($post->children(0)->href);
}

我正在使用和cURL进行刮取。

我通过添加一个if语句来解决问题,检查标记是否为空,如果为空,则将
href
添加到我的数组中,如果不是,则不执行任何操作,如下所示:

foreach($items as $post) {
    if (empty($post->children(0)->children(1)->children(0)->plaintext)) {
        $url_results[] = $url . ($post->children(0)->href);
    }
    else {}
}

这个class属性不完全正确。它是被刮取的数据,所以很遗憾,我无法控制它们使用什么类。不,我的意思是它与html中的类不匹配