免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

php采集網站數據代碼,php爬蟲數據采集

怎么用php采集網站數據

簡單的分了幾個步驟:

成都創新互聯公司自2013年起,是專業互聯網技術服務公司,擁有項目成都網站建設、網站建設網站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元藍田做網站,已為上家服務,為藍田各地企業和個人服務,聯系電話:028-86922220

1、確定采集目標

2、獲取目標遠程頁面內容(curl、file_get_contents)

3、分析頁面html源碼,正則匹配你需要的內容(preg_match、preg_match_all),這一步最為重要,不同頁面正則匹配規則不一樣

4、入庫

用PHP獲取網頁部分數據

如果你要

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

標簽中的內容,可以用preg_match_all //提取所有代碼 $pattern = '/

(.+?)

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

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

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

phpstudy怎么抓取網頁數據

什么網頁數據?

是打開 本地網頁還是打開網上網頁

如果是本地網頁的話? 在瀏覽器上輸入127.0.0.1或者localhost進行訪問

如果是外網我理解的是你要獲取外網的一個網頁,可以用代碼或者程序來實現

(一般稱為采集程序,或者小偷程序)

//個人認為curl好一點,因為curl可以模擬瀏覽器,有的網站會過濾機器人

//1.php代碼

//把網頁讀入一個字符串

$contone?=?file_get_contents('url');

print_r($contone);

//curl采集

#初始化curl??(true/false)

$ch=curl_init();

#請求url地址

$params[CURLOPT_URL]='網址';

#是否返回響應頭信息

$params[CURLOPT_HEADER]?=?true;

#是否將結果返回

$params[CURLOPT_RETURNTRANSFER]?=?true;

#是否重定向

$params[CURLOPT_FOLLOWLOCATION]?=?true;

#偽造瀏覽器

$params[CURLOPT_USERAGENT]?=?'Mozilla/5.0?(Windows?NT?5.1;?rv:9.0.1)?Gecko/20100101?Firefox/9.0.1';

curl_setopt_array($ch,?$params);

$content=curl_exec($ch);

//輸出網頁內容

print_r($content);

//下面是整個curl采集類

class?Curl{

#采集的地址

public?$url;

#匹配的正則

public?$preg;

#模擬登錄需要的用戶名

public?$username;

#模擬登錄需要的密碼;

public?$pwd;

#cookie存儲的路徑

private?$cookie_path;

#采集數據的字符集

public?$charset;

/**

*?構造方法,初始化采集基本信息

*?@param?$url??采集的url

*?@param?$preg?匹配的正則

*?@param?string?$username??用戶名

*?@param?string?$pwd??密碼

*?@param?string?$charset?字符集

*/

public?function?__construct($info){

extract($info);

$this-url=$url;

$this-preg=$preg;

if(isset($charset)){

header("content-type:text/html;charset=".$this-charset);

}else{

header("content-type:text/html;charset=utf-8");

}

if(isset($username)){

$this-username=$username;

}

if(isset($pwd)){

$this-pwd=$pwd;

}

}

/*

*?采集數據,非表單提交方式,直接采集的

*/

public?function?get_info(){

#初始化curl

$ch=curl_init();

#請求url地址

$params[CURLOPT_URL]=$this-url;

#是否返回響應頭信息

$params[CURLOPT_HEADER]?=?true;

#是否將結果返回

$params[CURLOPT_RETURNTRANSFER]?=?true;

#是否重定向

$params[CURLOPT_FOLLOWLOCATION]?=?true;

#偽造瀏覽器

$params[CURLOPT_USERAGENT]?=?'Mozilla/5.0?(Windows?NT?5.1;?rv:9.0.1)?Gecko/20100101?Firefox/9.0.1';

//判斷是否有cookie,有的話直接使用

//if?(isset($_COOKIE['cookie_jar'])?($_COOKIE['cookie_jar']?||?is_file($_COOKIE['cookie_jar']))){

//????$params[CURLOPT_COOKIEFILE]?=?$_COOKIE['cookie_jar'];?//這里判斷cookie

//}?else?{

//????$cookie_jar?=?tempnam($this-cookie_path,?'cookie');??????????????????//產生一個cookie文件

//????$params[CURLOPT_COOKIEJAR]?=?$cookie_jar;???????????????????????//寫入cookie信息

//????setcookie('cookie_jar',?$cookie_jar);?//保存cookie路徑

//}

#開始發送請求,傳入curl參數

curl_setopt_array($ch,?$params);

$content=curl_exec($ch);

preg_match_all($this-preg,$content,$arr);

return?$arr;

}

/**

*?采集遠程圖片

*?@param?$img??圖片路徑??是一個數組

*?@param?$save_path???圖片保存在你本地的路徑

*?@return?bool

*/

public?function?get_img($img,$save_path){

for($i=0;$icount($img);$i++)?{

$res=@file_get_contents($img[$i]);

$img_type=substr($img[$i],?strrpos($img[$i],?"."));

$path=$save_path.time().rand(1,9999999).mt_rand()?.$img_type;

$img[$i]?=?$path;

file_put_contents($path,$res);

}

return?$img;

}

//登錄后采集

public?function?register_info(){

//采集的信息需要先登錄的就要先模擬登錄

//設置cookie保存路徑

$ch?=?curl_init();

//組裝用戶名和密碼

$info['username']?=?$this-username;

$info['password']?=?$this-pwd;

//模擬表單提交

$params[CURLOPT_URL]?=?$this-url;????//請求url地址

$params[CURLOPT_HEADER]?=?true;?//是否返回響應頭信息

$params[CURLOPT_RETURNTRANSFER]?=?true;?//是否將結果返回

$params[CURLOPT_FOLLOWLOCATION]?=?true;?//是否重定向

$params[CURLOPT_USERAGENT]?=?'Mozilla/5.0?(Windows?NT?5.1;?rv:9.0.1)?Gecko/20100101?Firefox/9.0.1';

$postfields?=?'';

//將表單要提交的數據編程URL拼接方式

foreach?($info?as?$key?=?$value){

$postfields?.=?urlencode($key)?.?'='?.?urlencode($value)?.?'';

}

$params[CURLOPT_POST]?=?true;

$params[CURLOPT_POSTFIELDS]?=?$postfields;

//判斷是否有cookie,有的話直接使用

if?(isset($_COOKIE['cookie_jar'])($_COOKIE['cookie_jar']||is_file($_COOKIE['cookie_jar']))){

$params[CURLOPT_COOKIEFILE]?=?$_COOKIE['cookie_jar'];?//這里判斷cookie

}else{

$cookie_jar?=?tempnam($this-cookie_path,?'cookie');?//產生一個cookie文件

$params[CURLOPT_COOKIEJAR]?=?$cookie_jar;?//寫入cookie信息

setcookie('cookie_jar',?$cookie_jar);?//保存cookie路徑

}

curl_setopt_array($ch,?$params);?//傳入curl參數

$content?=?curl_exec($ch);?//執行

return?$content;

}

}

分享名稱:php采集網站數據代碼,php爬蟲數據采集
網站網址:http://m.newbst.com/article48/hsdoep.html

成都網站建設公司_創新互聯,為您提供網站策劃企業網站制作ChatGPT網站維護電子商務網站制作

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

搜索引擎優化