婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > PHP 爬取網頁的主要方法

PHP 爬取網頁的主要方法

熱門標簽:沈陽人工智能電銷機器人公司 寶安400電話辦理 哈爾濱400電話辦理到易號網 拉薩打電話機器人 電銷機器人-快迭智能 高識別電銷機器人 合肥外呼系統app 智能外呼電銷系統 h5 地圖標注

主要流程就是獲取整個網頁,然后正則匹配(關鍵的)。

PHP抓取頁面的主要方法,有幾種方法是網上前輩的經驗,現在還沒有用到的,先存下來以后試試。

1.file()函數

2.file_get_contents()函數

3.fopen()->fread()->fclose()模式

4.curl方式 (本人主要用這個)

5.fsockopen()函數 socket模式

6.插件(如:http://sourceforge.net/projects/snoopy/)

7.file()函數

?php
//定義url
$url='[http://t.qq.com](http://t.qq.com/)';//fiel函數讀取內容數組
$lines_array=file($url);//拆分數組為字符串
$lines_string=implode('',$lines_array);//輸出內容
echo $lines_string; 

2.使用file_get_contents方法實現,比較簡單。

使用file_get_contents和fopen必須空間開啟allow_url_fopen。方法:編輯php.ini,設置 allow_url_fopen = On,allow_url_fopen關閉時fopen和file_get_contents都不能打開遠程文件。

$url="[http://news.sina.com.cn/c/nd/2016-10-23/doc-ifxwztru6951143.shtml](http://news.sina.com.cn/c/nd/2016-10-23/doc-ifxwztru6951143.shtml)";
$html=file_get_contents($url);
//如果出現中文亂碼使用下面代碼`
//$getcontent = iconv("gb2312", "utf-8",$html);
echo"textarea style='width:800px;height:600px;'>".$html."/textarea>";

3.fopen()->fread()->fclose()模式 ,目前還沒用過,看到了就先記下了

?php
//定義url
$url='[http://t.qq.com](http://t.qq.com/)';//fopen以二進制方式打開 
$handle=fopen($url,"rb");//變量初始化
$lines_string="";//循環讀取數據
do{
$data=fread($handle,1024);  
if(strlen($data)==0) {`
break; 
} 
$lines_string.=$data;
}while(true);//關閉fopen句柄,釋放資源
fclose($handle);//輸出內容
echo $lines_string;

4.使用curl實現(本人一般使用這個)。

使用curl必須空間開啟curl。方法:windows下修改php.ini,將extension=php_curl.dll前面的分號去掉,而且需 要拷貝ssleay32.dll和libeay32.dll到C:\WINDOWS\system32下;Linux下要安裝curl擴展。

?php
header("Content-Type: text/html;charset=utf-8");
date_default_timezone_set('PRC');
$url = "https://***********ycare";//要爬取的網址
$res = curl_get_contents($url);//curl封裝方法
preg_match_all('/script>(.*?)\/script>/',$res,$arr_all);//這個網頁中數據通過js包過來,所以直接抓js就可以
preg_match_all('/"id"\:"(.*?)",/',$arr_all[1][1],$arr1);//從js塊中匹配要的數據
$list = array_unique($arr1[1]);//(可省)保證不重復
//以下則是同理,循環則可
for($i=0;$i=6;$i=$i+2){
  $detail_url = 'ht*****em/'.$list[$i];
  $detail_res = curl_get_contents($detail_url);
  preg_match_all('/script>(.*?)\/script>/',$detail_res,$arr_detail);
  preg_match('/"desc"\:"(.*?)",/',$arr_detail[1][1],$arr_content);
  ***
    ***
    ***
  $ret=curl_post('http://**********cms.php',$result);//此腳本未放在服務器上,原因大家懂就好哈。
}
function curl_get_contents($url,$cookie='',$referer='',$timeout=300,$ishead=0) {
  $curl = curl_init();
  curl_setopt($curl, CURLOPT_RETURNTRANSFER,1);
  curl_setopt($curl, CURLOPT_FOLLOWLOCATION,1);
  curl_setopt($curl, CURLOPT_URL,$url);
  curl_setopt($curl, CURLOPT_TIMEOUT,$timeout);
  curl_setopt($curl, CURLOPT_USERAGENT,'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36');
  if($cookie)
  {
    curl_setopt( $curl, CURLOPT_COOKIE,$cookie);
  }
  if($referer)
  {
    curl_setopt ($curl,CURLOPT_REFERER,$referer);
  }
  $ssl = substr($url, 0, 8) == "https://" ? TRUE : FALSE;
  if ($ssl)
  {
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
  }
  $res = curl_exec($curl);
  return $res;
  curl_close($curl);
}
//curl post數據到服務器
function curl_post($url,$data){
  $ch = curl_init();
  curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
  //curl_setopt($ch,CURLOPT_FOLLOWLOCATION, 1);
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
  curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36');
  curl_setopt($ch,CURLOPT_URL,$url);
  curl_setopt($ch,CURLOPT_POST,true);
  curl_setopt($ch,CURLOPT_POSTFIELDS,$data);
  $output = curl_exec($ch);
  curl_close($ch);
  return $output; 
}
?>

5.fsockopen()函數 socket模式(沒用過,以后可以試試)

socket模式能否正確執行,也跟服務器的設置有關系,具體可以通過phpinfo查看服務器開啟了哪些通信協議

?php
$fp = fsockopen("t.qq.com", 80, $errno, $errstr, 30);
if (!$fp) {
  echo "$errstr ($errno)br />\n";
} else {
  $out = "GET / HTTP/1.1\r\n";
  $out .= "Host: t.qq.com\r\n";
  $out .= "Connection: Close\r\n\r\n";
  fwrite($fp, $out);
  while (!feof($fp)) {
    echo fgets($fp, 128);
  }
  fclose($fp);
}

6.snoopy插件,最新版本是Snoopy-1.2.4.zip Last Update: 2013-05-30,推薦大家使用

使用網上非常流行的snoopy來進行采集,這是一個非常強大的采集插件,并且它的使用非常方便,你也可以在里面設置agent來模擬瀏覽器信息。

說明:設置agent是在 Snoopy.class.php 文件的第45行,請在該文件中搜索 “var 公式輸入有誤_SERVER['HTTP_USER_AGENT']; 可以得到瀏覽器信息,將echo出來的內容復制到agent里面就可以了。

?php
//引入snoopy的類文件
require('Snoopy.class.php');
//初始化snoopy類
$snoopy=new Snoopy;
$url="[http://t.qq.com](http://t.qq.com/)";
//開始采集內容`
$snoopy->fetch($url);
//保存采集內容到$lines_string
$lines_string=$snoopy->results;
//輸出內容,嘿嘿,大家也可以保存在自己的服務器上
echo $lines_string;

總結

以上所述是小編給大家介紹的PHP 爬取網頁的主要方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

您可能感興趣的文章:
  • php實現的支付寶網頁支付功能示例【基于TP5框架】
  • Windows平臺PHP+IECapt實現網頁批量截圖并創建縮略圖功能詳解
  • php實現網頁上一頁下一頁翻頁過程詳解
  • 實例分析基于PHP微信網頁獲取用戶信息
  • php實現網頁常見文件上傳功能
  • php中抓取網頁內容的實例詳解
  • php編程實現簡單的網頁版計算器功能示例
  • PHP網頁緩存技術優點及代碼實例

標簽:泰州 林芝 威海 成都 張家口 梅州 山東 巴中

巨人網絡通訊聲明:本文標題《PHP 爬取網頁的主要方法》,本文關鍵詞  PHP,爬取,網頁,的,主要,方法,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PHP 爬取網頁的主要方法》相關的同類信息!
  • 本頁收集關于PHP 爬取網頁的主要方法的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产成人在线观看免费网站| 国产日韩综合av| 亚洲电影一级黄| 亚洲视频在线观看一区| 777午夜精品免费视频| 中文字幕亚洲电影| 欧美一级久久久久久久大片| 成人黄色片在线观看| 美腿丝袜在线亚洲一区| 性做久久久久久免费观看欧美| 国产亚洲欧美激情| 国产亚洲一区二区三区四区| 欧美日韩在线观看一区二区 | 日韩二区在线观看| 亚洲另类色综合网站| 国产精品人成在线观看免费| 久久久不卡影院| 久久精品视频在线看| 国产精品美女一区二区在线观看| 久久人人爽人人爽| 国产精品免费免费| 亚洲自拍偷拍综合| 午夜一区二区三区在线观看| 视频一区欧美日韩| 亚洲va天堂va国产va久| 日韩av在线发布| 不卡大黄网站免费看| 色欧美88888久久久久久影院| 一本一道久久a久久精品| 欧美撒尿777hd撒尿| 欧美成人女星排行榜| 国产丝袜美腿一区二区三区| 国产欧美视频在线观看| 亚洲成a人片在线观看中文| 免费人成精品欧美精品| 粉嫩av亚洲一区二区图片| 欧美视频在线一区| 欧美国产激情二区三区| 国产精品国产精品国产专区不蜜| 91亚洲精华国产精华精华液| 色欲综合视频天天天| 日韩视频一区在线观看| 又紧又大又爽精品一区二区| 麻豆国产欧美日韩综合精品二区 | 欧美一区二区三区四区高清| 精品成人免费观看| 亚洲第一久久影院| 欧美视频完全免费看| 亚洲精品一卡二卡| 99这里都是精品| 久久久夜色精品亚洲| 蜜臂av日日欢夜夜爽一区| 91精品在线免费观看| 亚洲成a人v欧美综合天堂| 欧美亚洲动漫精品| 亚洲国产欧美另类丝袜| av色综合久久天堂av综合| 亚洲国产高清不卡| 在线视频综合导航| 三级成人在线视频| 久久影院午夜论| 国产麻豆午夜三级精品| 久久免费视频一区| 成人性生交大片免费| 久久久久久久综合狠狠综合| 粉嫩嫩av羞羞动漫久久久 | 91精品久久久久久久99蜜桃| 蜜臀精品一区二区三区在线观看| 日韩欧美的一区二区| 国产成人午夜精品影院观看视频| 国产精品久久久久影院老司| 欧美日韩高清在线| 亚洲欧美日韩中文播放 | 91美女在线看| 国产欧美日韩精品在线| 久久99精品久久久久| 中文字幕乱码日本亚洲一区二区 | 制服丝袜在线91| 精品在线观看视频| 亚洲一区二区三区在线看| 亚洲激情第一区| 国产精品久久久久影视| 日韩视频免费观看高清完整版在线观看| 日韩激情一区二区| 亚洲视频在线观看一区| 精品国产一区二区三区久久影院 | 久久er99精品| 亚洲成人久久影院| 亚洲成av人影院| 亚洲视频在线一区二区| 国产精品美女久久久久高潮| 国产日韩欧美激情| 精品久久久三级丝袜| 欧美日韩国产电影| 日韩一区二区在线观看视频播放| 欧美精品粉嫩高潮一区二区| 日韩一区二区三| 日韩欧美一区电影| 精品国产91九色蝌蚪| 国产亚洲va综合人人澡精品| 国产片一区二区| 亚洲综合男人的天堂| 亚洲国产wwwccc36天堂| 日韩va亚洲va欧美va久久| 久久国产尿小便嘘嘘尿| 成人美女在线视频| 在线观看国产91| 欧美少妇bbb| 国产丝袜在线精品| 亚洲国产欧美一区二区三区丁香婷| 日本成人中文字幕在线视频| 亚洲精品免费在线| 精品国产乱码久久久久久免费| 欧美精品一区二区三区久久久| 欧美激情艳妇裸体舞| 亚洲国产一区在线观看| 成人小视频免费在线观看| 欧美日韩一区二区三区四区五区 | 成人永久aaa| 欧美电影在线免费观看| 中文字幕在线一区免费| 久久精品国产77777蜜臀| 91无套直看片红桃| 亚洲三级小视频| 成人夜色视频网站在线观看| 91精品国产综合久久蜜臀| 亚洲欧美一区二区在线观看| 国产成人精品在线看| 欧美精品一区二区三区蜜臀| 精品一区二区免费| 日韩视频一区二区三区在线播放| 偷拍日韩校园综合在线| 欧美高清www午色夜在线视频| 亚洲尤物在线视频观看| 色狠狠一区二区三区香蕉| 亚洲人成在线播放网站岛国| 色综合色综合色综合| 亚洲国产一区二区三区青草影视| 欧美另类z0zxhd电影| 亚洲1区2区3区4区| 精品国产一二三| 成人高清av在线| 亚洲国产视频网站| 日韩精品一区二区三区视频播放| 国产一区二区三区免费看| 日本一区二区不卡视频| 欧洲激情一区二区| 青椒成人免费视频| 国产亚洲一区二区在线观看| 欧洲国内综合视频| 欧美日韩一区二区三区视频 | 成人免费视频视频在线观看免费 | 精品国产污污免费网站入口| 欧美一级理论片| 一个色在线综合| 精品综合久久久久久8888| 国产精品三级在线观看| 日韩一级在线观看| 99riav久久精品riav| 狠狠网亚洲精品| 亚洲色图清纯唯美| 亚洲国产成人午夜在线一区| 欧美一级二级三级蜜桃| 亚洲免费高清视频在线| 国产日韩欧美精品在线| 日韩欧美在线1卡| 欧美巨大另类极品videosbest| 丁香桃色午夜亚洲一区二区三区| 首页欧美精品中文字幕| 亚洲国产日韩一级| 亚洲午夜免费视频| 亚洲福利一区二区三区| 亚洲品质自拍视频| 亚洲麻豆国产自偷在线| 亚洲精品视频一区| 一区二区在线观看不卡| 亚洲人午夜精品天堂一二香蕉| 久久久美女艺术照精彩视频福利播放| 日韩一区二区三区视频| 精品日韩99亚洲| 国产视频一区二区在线观看| 精品福利av导航| 欧美国产日韩在线观看| 亚洲你懂的在线视频| 日产精品久久久久久久性色| 国产精品一区二区在线观看网站| 成人激情校园春色| 91精品国产综合久久国产大片| 久久亚洲捆绑美女| 亚洲少妇最新在线视频| 奇米精品一区二区三区在线观看| 国产精品中文字幕日韩精品 | 激情综合色播激情啊| 99re亚洲国产精品| 91精品国产色综合久久不卡电影| 国产精品美女久久久久久久久 | 麻豆精品一二三| 99国产精品一区| 久久无码av三级| 久久国内精品视频|