如何使用cURL从网站下载特定的DIV?

时间:2011-04-17 19:27:45

标签: php function html curl

我正在学习PHP,我想知道如何通过网站上的cURL自动下载每两个小时的特定DIV。

3 个答案:

答案 0 :(得分:2)

你没有。您下载整个页面,然后针对您感兴趣的特定DIV进行解析。

答案 1 :(得分:1)

UNTESTED(可能是错误):

set_time_limit(3600*24); //24 hours

$numDownloads = 12; 

for ($i = 0; $i < $numDownloads; $i++) 
{
    $ch = curl_init('http://www.example.com/');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $content = curl_exec($ch);
    curl_close($ch);

    if (preg_match('/<div>(.*?)<\/div>/i', $content, $matches)) 
    {
        $divContents = $matches[1];

        $myFile = 'div'.$i.'.txt'; 

        if ($fh = fopen($myFile, 'w')) 
        {
            fwrite($fh, $divContents) 
        } 

        fclose($fh);
    }


    sleep(3600*2); 
}

我建议你放弃循环并在cron作业上运行它......

答案 2 :(得分:0)

您可以使用cURL下载该页面,并使用SimpleXML进行解析以找到您需要的内容。

SimpleXMLElement::xpath可能是找到所需内容的最快方式。