php扒網(wǎng)頁數(shù)據(jù) php抓取網(wǎng)頁內(nèi)容

php獲取網(wǎng)頁源碼內(nèi)容有哪些辦法

可以參考以下幾種方法:

我們提供的服務(wù)有:網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、新沂ssl等。為上千多家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的新沂網(wǎng)站制作公司

方法一: file_get_contents獲取

span style="white-space:pre"?/span$url="";

span style="white-space:pre"?/span$fh= file_get_contents

('');span style="white-space:pre"?/spanecho $fh;

方法二:使用fopen獲取網(wǎng)頁源代碼

span style="white-space:pre"?/span$url="";

span style="white-space:pre"?/span$handle = fopen ($url, "rb");

span style="white-space:pre"?/span$contents = "";

span style="white-space:pre"?/spanwhile (!feof($handle)) {

span style="white-space:pre"??/span$contents .= fread($handle, 8192);

span style="white-space:pre"?/span}

span style="white-space:pre"?/spanfclose($handle);

span style="white-space:pre"?/spanecho $contents; //輸出獲取到得內(nèi)容。

方法三:使用CURL獲取網(wǎng)頁源代碼

$url="";

$UserAgent = 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506; .NET CLR 3.5.21022; .NET CLR 1.0.3705; .NET CLR 1.1.4322)';

$curl = curl_init();?//創(chuàng)建一個(gè)新的CURL資源

curl_setopt($curl, CURLOPT_URL, $url);?//設(shè)置URL和相應(yīng)的選項(xiàng)

curl_setopt($curl, CURLOPT_HEADER, 0);? //0表示不輸出Header,1表示輸出

curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);?//設(shè)定是否顯示頭信息,1顯示,0不顯示。//如果成功只將結(jié)果返回,不自動(dòng)輸出任何內(nèi)容。如果失敗返回FALSE

curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);

curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);

curl_setopt($curl, CURLOPT_ENCODING, '');?//設(shè)置編碼格式,為空表示支持所有格式的編碼

//header中“Accept-Encoding: ”部分的內(nèi)容,支持的編碼格式為:"identity","deflate","gzip"。

curl_setopt($curl, CURLOPT_USERAGENT, $UserAgent);

curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);

//設(shè)置這個(gè)選項(xiàng)為一個(gè)非零值(象 “Location: “)的頭,服務(wù)器會(huì)把它當(dāng)做HTTP頭的一部分發(fā)送(注意這是遞歸的,PHP將發(fā)送形如 “Location: “的頭)。

$data = curl_exec($curl);

echo $data;

//echo curl_errno($curl); //返回0時(shí)表示程序執(zhí)行成功

curl_close($curl);?//關(guān)閉cURL資源,并釋放系統(tǒng)資源

拓展資料

PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本預(yù)處理器”)是一種通用開源腳本語言。語法吸收了C語言、Java和Perl的特點(diǎn),利于學(xué)習(xí),使用廣泛,主要適用于Web開發(fā)領(lǐng)域。PHP 獨(dú)特的語法混合了C、Java、Perl以及PHP自創(chuàng)的語法。它可以比CGI或者Perl更快速地執(zhí)行動(dòng)態(tài)網(wǎng)頁。

用PHP做出的動(dòng)態(tài)頁面與其他的編程語言相比,PHP是將程序嵌入到HTML(標(biāo)準(zhǔn)通用標(biāo)記語言下的一個(gè)應(yīng)用)文檔中去執(zhí)行,執(zhí)行效率比完全生成HTML標(biāo)記的CGI要高許多;PHP還可以執(zhí)行編譯后代碼,編譯可以達(dá)到加密和優(yōu)化代碼運(yùn)行,使代碼運(yùn)行更快。

參考資料:PHP(超文本預(yù)處理器)-百度百科

php獲取網(wǎng)頁源碼內(nèi)容有哪些辦法?

1、使用file_get_contents獲得網(wǎng)頁源代碼。這個(gè)方法最常用,只需要兩行代碼即可,非常簡(jiǎn)單方便。

2、使用fopen獲得網(wǎng)頁源代碼。這個(gè)方法用的人也不少,不過代碼有點(diǎn)多。

3、使用curl獲得網(wǎng)頁源代碼。使用curl獲得網(wǎng)頁源代碼的做法,往往是需要更高要求的人使用,例如當(dāng)你需要在抓取網(wǎng)頁內(nèi)容的同時(shí),得到網(wǎng)頁header信息,還有ENCODING編碼的使,USERAGENT的使用等等。

所謂的網(wǎng)頁代碼,就是指在網(wǎng)頁制作過程中需要用到的一些特殊的"語言",設(shè)計(jì)人員通過對(duì)這些"語言"進(jìn)行組織編排制作出網(wǎng)頁,然后由瀏覽器對(duì)代碼進(jìn)行"翻譯"后才是我們最終看到的效果。

制作網(wǎng)頁時(shí)常用的代碼有HTML,JavaScript,ASP,PHP,CGI等,其中超文本標(biāo)記語言(標(biāo)準(zhǔn)通用標(biāo)記語言下的一個(gè)應(yīng)用、外語簡(jiǎn)稱:HTML)是最基礎(chǔ)的網(wǎng)頁代碼。

用PHP獲取網(wǎng)頁部分?jǐn)?shù)據(jù)

如果你要

之間的所有源碼,用 preg_match 就可以,不用preg_match_all ,如果你要里面的所有的

標(biāo)簽中的內(nèi)容,可以用preg_match_all //提取所有代碼 $pattern = '/

(.+?)

/is'; preg_match($pattern, $string, $match); //$match[0] 即為

之間的所有源碼 echo $match[0]; //然后再提取

之間的內(nèi)容 $pattern = '/(.+?)li/is'; preg_match_all($pattern, $match[0], $results); $new_arr=array_unique($results[0]); foreach($new_arr as $kkk){ echo $kkk; }

當(dāng)前名稱:php扒網(wǎng)頁數(shù)據(jù) php抓取網(wǎng)頁內(nèi)容
網(wǎng)站路徑:http://muchs.cn/article48/hjsohp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管定制網(wǎng)站、移動(dòng)網(wǎng)站建設(shè)、云服務(wù)器、標(biāo)簽優(yōu)化外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管