亚洲免费不卡_在线视频精品_国产尤物精品_久久久久网址_久久精品91_欧美va天堂在线_狠狠入ady亚洲精品_亚洲午夜精品福利_国产精品草草_午夜精品久久99蜜桃的功能介绍

PHP抓取及分析網頁的方法詳解
來源:易賢網 閱讀:1255 次 日期:2016-08-25 15:44:32
溫馨提示:易賢網小編為您整理了“PHP抓取及分析網頁的方法詳解”,方便廣大網友查閱!

本文實例講述了PHP抓取及分析網頁的方法。分享給大家供大家參考,具體如下:

抓取和分析一個文件是非常簡單的事。這個教程將通過一個例子帶領你一步一步地去實現它。讓我們開始吧!

首先,我首必須決定我們將抓取的URL地址。可以通過在腳本中設定或通過$QUERY_STRING傳遞。為了簡單起見,讓我們將變量直接設在腳本中。

<?php

$url = 'http://www.php.net';

?>

第二步,我們抓取指定文件,并且通過file()函數將它存在一個數組里。

<?php

$url = 'http://www.php.net';

$lines_array = file($url);

?>

好了,現在在數組里已經有了文件了。但是,我們想分析的文本可能不全在一行里面。為了解決這個文件,我們可以簡單地將數組$lines_array轉化成一個字符串。我們可以使用implode(x,y)函數來實現它。如果在后面你想用explode(將字符串變量數組),將x設成"|"或"!"或其它類似的分隔符可能會更好。但是出于我們的目的,最好將x設成空格。y是另一個必要的參數,因為它是你想用implode()處理的數組。

<?php

$url = 'http://www.php.net';

$lines_array = file($url);

$lines_string = implode('', $lines_array);

?>

現在,抓取工作就做完了,下面該進行分析了。出于這個例子的目的,我們想得到在<head>到</head>之間的所有東西。為了分析出字符串,我們還需要叫做正規表達式的東西。

<?php

$url = 'http://www.php.net';

$lines_array = file($url);

$lines_string = implode('', $lines_array);

eregi("<head>(.*)</head>", $lines_string, $head);

?>

讓我們看一下代碼。正如你所見,eregi()函數按下面的格式執行:

eregi("<head>(.*)</head>", $lines_string, $head);

"(.*)"表示所有東西,可以解釋為,"分析在<head>和</head>間的所以東西"。$lines_string是我們正在分析的字符串,$head是分析后的結果存放的數組。

最后,我們可以輸數據。因為僅在<head>和</head>間存在一個實例,我們可以安全的假設數組中僅存在著一個元素,而且就是我們想要的。讓我們把它打印出來吧。

<?php

$url = 'http://www.php.net';

$lines_array = file($url);

$lines_string = implode('', $lines_array); eregi("<head>(.*)</head>", $lines_string, $head);

echo $head[0];

?>

這就是全部的代碼了。

<?php

//獲取所有內容url保存到文件

function get_index ( $save_file , $prefix = "index_" ){

   $count = 68 ;

   $i = 1 ;

  if ( file_exists ( $save_file )) @ unlink ( $save_file );

   $fp = fopen ( $save_file , "a+" ) or die( "Open " . $save_file . " failed" );

  while( $i < $count ){

     $url = $prefix . $i . ".htm" ;

    echo "Get " . $url . "..." ;

     $url_str = get_content_url ( get_url ( $url ));

    echo " OK/n" ;

     fwrite ( $fp , $url_str );

    ++ $i ;

  }

   fclose ( $fp );

}

//獲取目標多媒體對象

function get_object ( $url_file , $save_file , $split = "|--:**:--|" ){

  if (! file_exists ( $url_file )) die( $url_file . " not exist" );

   $file_arr = file ( $url_file );

  if (! is_array ( $file_arr ) || empty( $file_arr )) die( $url_file . " not content" );

   $url_arr = array_unique ( $file_arr );

  if ( file_exists ( $save_file )) @ unlink ( $save_file );

   $fp = fopen ( $save_file , "a+" ) or die( "Open save file " . $save_file . " failed" );

  foreach( $url_arr as $url ){

    if (empty( $url )) continue;

    echo "Get " . $url . "..." ;

     $html_str = get_url ( $url );

    echo $html_str ;

    echo $url ;

    exit;

     $obj_str = get_content_object ( $html_str );

    echo " OK/n" ;

     fwrite ( $fp , $obj_str );

  }

   fclose ( $fp );

}

//遍歷目錄獲取文件內容

function get_dir ( $save_file , $dir ){

   $dp = opendir ( $dir );

  if ( file_exists ( $save_file )) @ unlink ( $save_file );

   $fp = fopen ( $save_file , "a+" ) or die( "Open save file " . $save_file . " failed" );

  while(( $file = readdir ( $dp )) != false ){

    if ( $file != "." && $file != ".." ){

      echo "Read file " . $file . "..." ;

       $file_content = file_get_contents ( $dir . $file );

       $obj_str = get_content_object ( $file_content );

      echo " OK/n" ;

       fwrite ( $fp , $obj_str );

    }

  }

   fclose ( $fp );

}

//獲取指定url內容

function get_url ( $url ){

   $reg = '/^http:////[^//].+$/' ;

  if (! preg_match ( $reg , $url )) die( $url . " invalid" );

   $fp = fopen ( $url , "r" ) or die( "Open url: " . $url . " failed." );

  while( $fc = fread ( $fp , 8192 )){

     $content .= $fc ;

  }

   fclose ( $fp );

  if (empty( $content )){

    die( "Get url: " . $url . " content failed." );

  }

  return $content ;

}

//使用socket獲取指定網頁

function get_content_by_socket ( $url , $host ){

   $fp = fsockopen ( $host , 80 ) or die( "Open " . $url . " failed" );

   $header = "GET /" . $url . " HTTP/1.1/r/n" ;

   $header .= "Accept: */*/r/n" ;

   $header .= "Accept-Language: zh-cn/r/n" ;

   $header .= "Accept-Encoding: gzip, deflate/r/n" ;

   $header .= "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Maxthon; InfoPath.1; .NET CLR 2.0.50727)/r/n" ;

   $header .= "Host: " . $host . "/r/n" ;

   $header .= "Connection: Keep-Alive/r/n" ;

   //$header .= "Cookie: cnzz02=2; rtime=1; ltime=1148456424859; cnzz_eid=56601755-/r/n/r/n";

   $header .= "Connection: Close/r/n/r/n" ;

   fwrite ( $fp , $header );

   while (! feof ( $fp )) {

     $contents .= fgets ( $fp , 8192 );

   }

   fclose ( $fp );

   return $contents ;

}

//獲取指定內容里的url

function get_content_url ( $host_url , $file_contents ){

   //$reg = '/^(#|<a class='replace_word' title="JavaScript知識庫" target='_blank' style='color:#df3434; font-weight:bold;'>JavaScript</a>.*?|ftp:////.+|http:////.+|.*?href.*?|play.*?|index.*?|.*?asp)+$/i';

   //$reg = '/^(down.*?/.html|/d+_/d+/.htm.*?)$/i';

   $rex = "/([hH][rR][eE][Ff])/s*=/s*['/"]*([^>'/"/s]+)[/"'>]*/s*/i" ;

   $reg = '/^(down.*?/.html)$/i' ;

   preg_match_all ( $rex , $file_contents , $r );

   $result = "" ; //array();

   foreach( $r as $c ){

    if ( is_array ( $c )){

      foreach( $c as $d ){

        if ( preg_match ( $reg , $d )){ $result .= $host_url . $d . "/n" ; }

      }

    }

  }

  return $result ;

}

//獲取指定內容中的多媒體文件

function get_content_object ( $str , $split = "|--:**:--|" ){

   $regx = "/href/s*=/s*['/"]*([^>'/"/s]+)[/"'>]*/s*(.*?<//b>)/i" ;

   preg_match_all ( $regx , $str , $result );

  if ( count ( $result ) == 3 ){

     $result [ 2 ] = str_replace ( "多媒體: " , "" , $result [ 2 ]);

     $result [ 2 ] = str_replace ( " " , "" , $result [ 2 ]);

     $result = $result [ 1 ][ 0 ] . $split . $result [ 2 ][ 0 ] . "/n" ;

  }

  return $result ;

}

?>

希望本文所述對大家PHP程序設計有所幫助。

更多信息請查看網絡編程
易賢網手機網站地址:PHP抓取及分析網頁的方法詳解
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點

版權所有:易賢網

亚洲免费不卡_在线视频精品_国产尤物精品_久久久久网址_久久精品91_欧美va天堂在线_狠狠入ady亚洲精品_亚洲午夜精品福利_国产精品草草_午夜精品久久99蜜桃的功能介绍
狂野欧美一区| 亚洲三级毛片| 亚洲专区一区二区三区| 久久不射2019中文字幕| 午夜日韩在线| 99国产精品视频免费观看一公开| 亚洲激情网址| 久久久久综合一区二区三区| 国内一区二区三区在线视频| 在线综合亚洲| 欧美日韩综合久久| 一本色道精品久久一区二区三区| 国产精品久久久久毛片大屁完整版 | 久久婷婷影院| 激情国产一区| 欧美成人69av| 先锋影音一区二区三区| 亚洲网站在线| 亚洲欧美一区在线| 国产精品日韩欧美一区| 国内精品国语自产拍在线观看| 国产午夜精品一区二区三区欧美 | 亚洲视频www| 久久一区亚洲| 国产伦精品一区| 亚洲国产日本| 欧美日韩一区综合| 久久亚洲欧美| 久久国产精品一区二区三区四区| 亚洲人久久久| 亚洲国产日韩美| 欧美日韩精品| 午夜精品剧场| 久久亚洲美女| 久久婷婷影院| 久久久综合网| 欧美伊人影院| 巨乳诱惑日韩免费av| 欧美资源在线| 欧美亚洲在线| 久久亚洲高清| 欧美aⅴ99久久黑人专区| 美女精品在线观看| 久久日韩精品| 欧美99久久| 欧美日韩国产高清视频| 欧美午夜电影在线观看 | 91久久精品一区二区别| 激情婷婷欧美| 亚洲美女网站| 国产九九精品| 久久看片网站| 国内精品嫩模av私拍在线观看| 欧美日韩理论| 影音先锋久久精品| 亚洲精选国产| 国产一区二区三区的电影| 一区二区三区欧美在线| 国产九九精品| 欧美在线视频一区二区三区| 欧美极品一区二区三区| 亚洲视频免费| 一区二区三区国产盗摄| 久久精品日产第一区二区| 欧美一区亚洲二区| 亚洲小说欧美另类社区| 一区二区国产精品| 久久亚洲美女| 一区福利视频| 先锋影音一区二区三区| 欧美日韩精品不卡| 国产欧美一区二区三区国产幕精品| 亚洲一区欧美激情| 狠色狠色综合久久| 国产一区二区精品| 欧美精品导航| 国产精品一二| 国产精品www.| 性8sex亚洲区入口| 影音先锋久久久| 久久久久国产精品一区三寸| 一区精品在线| 欧美国产先锋| 亚洲欧美久久久久一区二区三区| 欧美日韩国产不卡在线看| 中文精品视频| 国产精品大片| 久久亚洲综合| 国产免费成人| 在线成人欧美| 国产精品v一区二区三区| 国产精品免费在线| 在线观看亚洲| 欧美日韩a区| 久久久福利视频| 国产一区二区精品| 精品成人免费| 欧美高清日韩| 久久久久久一区二区| 国产一区二区三区的电影 | 国产毛片久久| 亚洲欧洲一级| 亚洲午夜精品久久久久久浪潮| 久久久久久9| 999亚洲国产精| 在线看片欧美| 亚洲一级高清| 伊甸园精品99久久久久久| 欧美激情一区| 国产精品s色| 欧美日韩一卡| 欧美日韩p片| 欧美国产三区| 欧美日韩福利| 黄色精品免费| 亚洲视频久久| 亚洲激情二区| 夜夜嗨av一区二区三区网站四季av| 亚洲视频高清| 亚洲国产精品综合| 一区在线视频| 日韩五码在线| 国产亚洲精品自拍| 久久不射中文字幕| 久久夜色精品| 黄色成人在线网站| 99精品国产在热久久| 国产日韩欧美三区| 久久精品欧美| 合欧美一区二区三区| 一区二区视频欧美| 一区二区三区福利| 亚洲欧美日本日韩| 午夜精品视频在线观看一区二区| 国产在线欧美日韩| 日韩一级免费| 久久综合九色综合欧美狠狠| 国产精品黄色| 亚洲精品日韩在线观看| 亚洲欧美视频| 国产精品v一区二区三区| 亚洲高清在线播放| 国产麻豆综合| 欧美日韩免费高清| 国产精品美女诱惑| 欧美不卡一区| 在线视频精品一区| 欧美一区二区三区在线播放| 亚洲国产精品一区| 久久人人精品| 国产精品久久久久久久久久直播| 老牛国产精品一区的观看方式| 亚洲视频日本| 久久久久久久久久码影片| 影音先锋亚洲电影| 久久久久网址| 国产欧美日韩综合精品二区| 欧美精品啪啪| 亚洲在线播放| 在线国产精品一区| 欧美日韩免费观看一区=区三区 | 国产综合欧美| 亚洲综合精品四区| 亚洲激情网站| 欧美精品一卡| 久久动漫亚洲| 国产精品美女黄网| 亚洲黄色精品| 国产一区日韩欧美| 欧美影院一区| 男女av一区三区二区色多| 亚洲激情自拍| 好吊色欧美一区二区三区四区| 久久国产精品久久久久久电车| 亚洲三级观看| 亚洲国产日韩在线| 国产综合色产| 欧美激情日韩| 久久青青草综合| 亚洲综合三区| 国产精品视频久久一区| 亚洲免费大片| 亚洲区一区二| 亚洲国产精品一区| 亚洲激情av| 亚洲精品日韩在线观看| 亚洲成色最大综合在线| 影音先锋亚洲精品| 亚洲精品一二| 国产区二精品视| 一本色道精品久久一区二区三区| 亚洲激情综合| 99精品国产高清一区二区| 亚洲毛片视频| 国产精品老牛| 久久狠狠久久综合桃花| 校园激情久久| 欧美一区影院| 国产综合欧美在线看| 尤物在线精品| 国产视频一区免费看| 亚洲永久在线| 午夜精品av| 亚洲成人在线| 欧美一级视频| 国产精品啊啊啊| 亚洲美女少妇无套啪啪呻吟| 国产精品视频免费观看| 久久午夜精品| 黄色成人在线网站| 国产精品久久久亚洲一区| 校园激情久久| 国产综合精品| 国产伦精品一区二区三区四区免费| 久久成人国产| 亚洲国产99| 久久精品盗摄| 在线高清一区| 欧美一级视频| 亚洲大胆视频| 欧美一区激情视频在线观看| 激情文学一区| 免费试看一区| 1024日韩| 玖玖国产精品视频| 亚洲第一在线综合在线| 免播放器亚洲| 亚洲国产清纯| 欧美二区视频| 亚洲一区免费看| 精品不卡视频| 午夜日韩在线| 亚洲综合日本| 亚洲成人资源| 欧美在线资源| 国产精品三区www17con| 国产一区视频观看| 久久福利精品| 亚洲久久一区| 国产一区观看| 可以看av的网站久久看| 国产精品乱看| 亚洲精品无人区| 国产精品va| 久久先锋影音| 国产精品一区二区你懂得| 国产一区观看| 欧美精品97| 久久亚洲综合| 久久av二区| 免费看黄裸体一级大秀欧美| 亚洲精品少妇| 在线欧美一区| 国内在线观看一区二区三区| 欧美99在线视频观看| 免费日韩av片| 蜜桃视频一区| 麻豆久久精品| 欧美专区18| 媚黑女一区二区| 麻豆九一精品爱看视频在线观看免费| 99精品视频免费| 一区二区精品在线| av成人天堂| 国产三级精品在线不卡| 9色精品在线| 宅男噜噜噜66国产日韩在线观看| 亚洲精选91| 国产日韩一区欧美| 国产精品一级| 美女爽到呻吟久久久久| 久久亚洲一区| 欧美日韩18| 亚洲国产精品第一区二区三区| 亚洲一级二级| 99av国产精品欲麻豆| 在线午夜精品| 久久精品一本| 国内一区二区三区在线视频| 亚洲国产导航| 国产美女一区| 久久一二三区| 红桃视频国产精品| 在线亚洲观看| 老牛国产精品一区的观看方式| 午夜国产欧美理论在线播放| 国产在线不卡| 国产麻豆综合| 欧美日韩四区| av成人免费观看| 玖玖在线精品| 亚洲啪啪91| 久久精品盗摄| 在线看片一区| 久久久精品五月天| 狠狠色狠狠色综合人人| 国产精品久久久久久久免费软件| 性高湖久久久久久久久| 欧美日韩精品不卡| 国产精品一卡| 黑人中文字幕一区二区三区| 亚洲在线播放| 尤物在线精品| 欧美一区二区三区在线免费观看| 好看的日韩av电影| 另类天堂av| 亚洲国产高清视频| 久久久亚洲人| 一本久道久久综合婷婷鲸鱼| 午夜日韩电影| 欧美亚洲一区| 亚洲国产午夜| 午夜视频一区| 欧美综合77777色婷婷| 亚洲高清成人| 欧美日韩国产综合视频在线| 裸体一区二区| 国产精品主播| 99热免费精品在线观看| 韩国在线视频一区| 欧美一区二区| 欧美一级二区| 亚洲免费婷婷| 国产精品一页| 在线视频日韩| 亚洲精品三级| 亚洲激精日韩激精欧美精品| 国外成人免费视频| 国产综合欧美| 欧美日本亚洲| 欧美在线视频一区二区三区| 先锋影音久久| 久久国产精品亚洲77777| 正在播放亚洲| 99国产精品99久久久久久粉嫩| 黄色精品免费| 亚洲视频精品| 1024日韩| 一本一本久久a久久精品综合妖精| 狠狠色伊人亚洲综合网站色| 欧美日韩一区二区三区在线观看免| 欧美一区国产一区| 欧美freesex交免费视频| 老牛影视一区二区三区| 乱人伦精品视频在线观看| 欧美综合二区| 久久午夜影视| 欧美欧美全黄| 国内精品久久久久久久果冻传媒| 欧美日韩在线精品| 国语精品中文字幕| 最近看过的日韩成人| 日韩亚洲欧美精品| 国产精品一区视频网站| 米奇777在线欧美播放| 午夜精品美女久久久久av福利| 久久在线精品| 国产精品xxx在线观看www| 狠狠色丁香久久综合频道| 亚洲精品九九| 久久国产精品免费一区| 欧美日本不卡高清| 伊人久久综合| 午夜在线精品偷拍| 欧美一区成人| 亚洲国产免费看| 亚洲一区二区在线看| 欧美精品国产| 亚洲精品精选| 久久久久中文| 最近看过的日韩成人| 久久国产精品一区二区三区四区| 欧美日韩日本国产亚洲在线| 一区二区日韩免费看| 久色成人在线| 一级成人国产| 欧美午夜精品| 亚洲综合精品| 亚洲成人在线| 欧美激情成人在线| 国产视频在线观看一区| 欧美日韩精品免费看| 亚洲一区二区在线看| 激情综合在线| 欧美国产91| 亚洲综合日韩| 亚洲激精日韩激精欧美精品| 欧美 日韩 国产精品免费观看| 一本色道久久综合| 欧美日韩国产不卡在线看| 亚洲一区二区三区涩| 亚洲国产成人不卡| 欧美国产高潮xxxx1819| 国产精品亚洲综合| 精品1区2区3区4区| 欧美日韩在线一二三| 久久婷婷av| 免费久久99精品国产自| 亚洲精品婷婷| 亚洲高清视频一区二区|