剛吃完午飯吧,來幫你實現一下吧。記得加分哦。
成都地區優秀IDC服務器托管提供商(創新互聯公司).為客戶提供專業的綿陽電信機房機柜租用,四川各地服務器托管,綿陽電信機房機柜租用、多線服務器托管.托管咨詢專線:028-86922220
$url = "";
$queryServer = curl_init();
curl_setopt($queryServer, CURLOPT_URL, $url);
curl_setopt($queryServer, CURLOPT_HEADER, 0);
curl_setopt($queryServer, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($queryServer, CURLOPT_RETURNTRANSFER, true);
curl_setopt($queryServer, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($queryServer, CURLOPT_TIMEOUT, 30);
$html = curl_exec($queryServer);
$html = iconv('UTF-8','GBK//IGNORE',$html); //如果你需要是的數據是utf-8編碼的,這一行可以注銷,如果需要gbk編碼的,請保留.如果出現亂碼,就是一行的問題,你自己調著試吧
//echo $holder;exit; 此處可以輸出來測試.
$html = str_replace(array("\n","\r","\t"),"",$html);
$preg = '/table\s+width=\"800\"[^]+(.*?)\/table/';
preg_match_all($preg,$html,$out);
//匹配每行
preg_match_all('/tr[^]+(.*?)\/tr/',$out[1][0],$tr);
//匹配每個td
$result = array();
$match = '/td.+([^]+)\/td/U';
foreach( $tr[0] as $key = $value ){
preg_match_all($match,$value,$arr);
$result[] = $arr[1];
}
//輸出測試,$result就是你要的數據,至于你要怎么輸出顯示格式,那就隨心調就好了。
foreach( $result as $key = $value ){
echo implode("\t",$value);
echo "br";
}
exit;
PHP Simple HTML DOM或者phpQuery可以直接取得某些div中的內容,里面有幾個例子專門針對于網頁抓取,調整好抓取頻次,舍去已經存在的數據,你可以參考下
;id=57class=2
這是請求報頭中的Accept-Language的關系了。
這樣一來,你只是使用file_get_contents函數就實現不了這個功能了。
能夠模擬瀏覽器發送各種報頭,甚至是登錄用cookie的擴展有不少,Curl就是其中之一。
你需要去網上去尋找相關的文章仔細了解一番,再做打算:
下面是PHP官網關于CURL擴展的手冊:
【Client URL Library】
當前題目:php抓取網頁動態數據,如何抓取動態網頁數據
網站鏈接:http://vcdvsql.cn/article38/heogpp.html
成都網站建設公司_創新互聯,為您提供全網營銷推廣、動態網站、企業建站、商城網站、App設計、品牌網站制作
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯