2
所以我想從網站上刮取一些數據。 有一些名單必須被刮掉。 會發生什麼,如果有15個名字需要被刮掉。除此之外,只有5個名字被刮掉。我怎麼才能讓我的蜷曲在等待幾秒鐘之前刮呢?
當我檢查原始網站時,他們也以類似的方式加載數據。首次加載網站時。只顯示五個名字。在重新加載時,會顯示10個名字,並再次顯示全部15個數據。
任何人都可以告訴我如何讓我的cURL等待幾秒鐘才能抓取原始數據。這樣所有的內容都可以被刮掉?
下面是代碼的,捲曲的設置選項的部分片段:
$post = curl_init();
curl_setopt($post, CURLOPT_URL, $url);
curl_setopt($post, CURLOPT_AUTOREFERER, true);
curl_setopt($post, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($post, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($post, CURLOPT_TIMEOUT, 2);
$img_contents = curl_exec($post);
curl_close($post);
$html= str_get_html($img_contents);
foreach($html->find('div[id=xxxx]') as $stay2)
{
$stay4=$stay2->find('span[class=xxx]');
foreach($stay4 as $stay6)
{
echo $abc[]= strip_tags($stay6) ."<br/>";
}
}
感謝ANS SEM,但它不工作:(我猜你必須有一些捲曲功能 –
啊你正在嘗試做的是讓curl等待在一個exec中間 據我所知這是不可能的,你可以做的是保持一個列表名稱,並刮幾次,並將其添加到列表中。 如果你說他們也等幾個秒,這意味着他們做了異步獲取(可能是一個延遲的Ajax調用),你可以做的就是嘗試找出這些調用(螢火蟲是一種方式,我敢肯定還有其他的) 並分別調用那些捲曲 – Sem