婷婷综合国产,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
    亚洲大片免费看| 国产精品久久综合| 99久久国产综合色|国产精品| 欧美aaa在线| 亚洲aaa精品| 又紧又大又爽精品一区二区| 国产精品理论片在线观看| 欧美激情一区二区三区全黄| 欧美一区二区三区爱爱| 欧美成人a∨高清免费观看| 欧美一级二级三级乱码| 日韩一区二区免费电影| 欧美不卡在线视频| 久久久亚洲欧洲日产国码αv| 久久精品人人爽人人爽| 国产精品久久久久久久第一福利| 国产精品久久久久久久浪潮网站| 国产精品久久久久久户外露出| 中文字幕免费不卡在线| 亚洲精选一二三| 日韩高清国产一区在线| 久久国产乱子精品免费女| 极品瑜伽女神91| 粉嫩在线一区二区三区视频| 99国产精品国产精品久久| 在线观看一区不卡| 日韩一区二区三区视频在线观看| 26uuu亚洲| 亚洲三级久久久| 五月天丁香久久| 国精产品一区一区三区mba视频| 国产不卡高清在线观看视频| 欧美在线观看视频一区二区| 日韩欧美国产一区二区三区 | 亚洲欧美日韩中文字幕一区二区三区| 亚洲欧美日韩系列| 日韩国产高清在线| 丁香啪啪综合成人亚洲小说 | 国产一区二区三区在线观看免费 | 亚洲另类春色校园小说| 舔着乳尖日韩一区| 成人深夜视频在线观看| 在线不卡中文字幕播放| 中文字幕亚洲视频| 六月婷婷色综合| 一本到不卡免费一区二区| 日韩欧美综合一区| 亚洲成a人片在线观看中文| 久久99国产精品成人| 在线观看国产日韩| 欧美激情一区二区三区在线| 久久狠狠亚洲综合| 欧美三级三级三级爽爽爽| 亚洲欧洲日韩在线| 国产电影精品久久禁18| 91精品国产福利在线观看| 一区二区三区欧美| jlzzjlzz亚洲女人18| 久久综合色婷婷| 全部av―极品视觉盛宴亚洲| 欧美男同性恋视频网站| 亚洲欧美经典视频| 不卡的av电影| 国产欧美日产一区| 国产成人免费视频网站高清观看视频| 制服丝袜日韩国产| 亚洲国产乱码最新视频| 色视频成人在线观看免| 日韩美女啊v在线免费观看| 大桥未久av一区二区三区中文| 欧美mv日韩mv亚洲| 久久精品国产在热久久| 日韩一区二区电影网| 久热成人在线视频| 亚洲精品一区二区三区精华液 | 亚洲精品中文在线观看| www.欧美.com| 综合激情网...| 欧美主播一区二区三区美女| 亚洲综合色噜噜狠狠| 欧美视频中文字幕| 五月综合激情婷婷六月色窝| 欧美日韩国产片| 国产精品狼人久久影院观看方式| 国产精品66部| 18成人在线观看| 色999日韩国产欧美一区二区| 亚洲综合精品久久| 欧美乱妇15p| 久久国产精品72免费观看| 久久久久久久久久久久电影 | 裸体健美xxxx欧美裸体表演| 久久人人超碰精品| 国产激情一区二区三区四区| 亚洲丝袜精品丝袜在线| 欧美日韩一区高清| 韩国女主播成人在线观看| 国产精品国产三级国产aⅴ原创 | 成人av中文字幕| 亚洲一区在线观看视频| 欧美一级xxx| 成人av片在线观看| 性欧美大战久久久久久久久| 26uuu精品一区二区三区四区在线| 国产91色综合久久免费分享| 一区二区三区在线免费| 日韩一区二区电影在线| 成人av综合在线| 欧美aaa在线| 一区二区三区中文字幕在线观看| 日韩亚洲欧美在线| 色婷婷激情综合| 激情综合色播激情啊| 亚洲综合区在线| 日韩欧美成人激情| 91久久精品国产91性色tv| 国产一区二区影院| 三级欧美在线一区| 国产精品福利影院| 精品对白一区国产伦| 欧美日韩精品免费观看视频 | 日韩高清不卡一区二区三区| 国产日韩欧美麻豆| 91精品国产欧美一区二区18| 99re这里只有精品视频首页| 久久97超碰国产精品超碰| 亚洲精品少妇30p| 国产亚洲成aⅴ人片在线观看 | av电影一区二区| 另类小说视频一区二区| 亚洲一区二区三区视频在线播放| 精品久久久久久久一区二区蜜臀| 欧美在线观看禁18| 99九九99九九九视频精品| 韩国精品一区二区| 日韩中文字幕不卡| 亚洲国产视频a| 一区二区三区在线视频观看| 国产欧美一二三区| 国产亚洲综合在线| 欧美电影免费观看完整版| 欧美精品久久99| 欧美日韩日日摸| 日本精品一区二区三区四区的功能| 国产一区二三区| 国产乱国产乱300精品| 蜜臂av日日欢夜夜爽一区| 亚洲国产精品久久一线不卡| 一区二区在线观看不卡| 国产精品久久久久久久久图文区| 久久天天做天天爱综合色| 久久精品水蜜桃av综合天堂| 久久精品综合网| 国产午夜精品一区二区| 国产欧美一区二区精品久导航| 欧美国产日本韩| 国产日韩欧美电影| 中文字幕巨乱亚洲| 国产精品毛片无遮挡高清| 中文字幕欧美激情一区| 国产精品美女一区二区三区| 中文字幕av免费专区久久| 中文一区在线播放| 亚洲黄网站在线观看| 亚洲影院理伦片| 日韩av中文字幕一区二区三区| 日韩电影在线看| 久久激情综合网| 国产98色在线|日韩| 99久久免费视频.com| 欧美午夜精品理论片a级按摩| 91麻豆精品国产91久久久久久久久| 日韩一区二区在线观看视频| 久久婷婷国产综合精品青草| 成人欧美一区二区三区小说 | 国产精品成人一区二区艾草| 一区二区激情视频| 精品中文字幕一区二区| 9久草视频在线视频精品| 欧美中文一区二区三区| 91精品国产综合久久福利软件 | 精品日本一线二线三线不卡| 国产精品久久久久久久久晋中| 一区二区三区精密机械公司| 久久国产精品色婷婷| 成人黄色免费短视频| 欧美日韩电影在线| 国产午夜亚洲精品不卡| 日韩电影一区二区三区四区| 成人av电影在线观看| 欧美夫妻性生活| 国产精品的网站| 久久se精品一区精品二区| 91美女片黄在线观看91美女| 日韩免费一区二区| 亚洲精选在线视频| 风间由美中文字幕在线看视频国产欧美| 色婷婷综合久久久久中文 | 欧美一区二区视频免费观看| 国产精品蜜臀av|