我想在如下网页采集所有的帖子url地址
http://www.discuz.net/forum-10-1.html帖子格式为
http://www.discuz.net/thread-3265731-1-1.html只要url链接,得出的结果一行一个

解决方案 »

  1.   

    $url = 'http://www.discuz.net/forum-10-1.html';
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,$url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6 (.NET CLR 3.5.30729)');
    $htmls = curl_exec($ch);
    curl_close($ch);
    $doc = new DOMDocument();
    libxml_use_internal_errors(true);
    $doc->loadHTML($htmls);
    $xpath = new DOMXPath($doc);
    $nodeList = $xpath->query('//a/@href');
    for ($i = 0; $i < $nodeList->length; $i++) {
    if(preg_match('@\/thread\-@',$nodeList->item($i)->value,$match)){
    echo $nodeList->item($i)->value. "<br/>";
    }
    }