所以,就需要本 " /> 欧美日韩另类在线专区,免费毛片在线视频,伊人精品在线

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

PHP文章采集URL補全函數(FormatUrl)

寫采集必用的函數,URL補全函數,也可叫做FormatUrl。
寫此函數作用就是為了開發采集程序,采集文章的時候會經常遇到頁面里的路徑是 “相對路徑” 或者 “絕對根路徑” 不是“絕對全路徑”就無法收集URL。

所以,就需要本功能函數進行對代碼進行格式化,把所有的超鏈接都格式化一遍,這樣就可以直接收集到正確的URL了。

路徑知識普及
相對路徑:“../” “./” 或者前面什么都不加
絕對根路徑:/path/xxx.html
絕對全路徑:http://www.xxx.com/path/xxx.html
使用實例:
復制代碼 代碼如下:
<?php
$surl="http://www.jb51.NET/";
$gethtm = '<a href="/index.htm">首頁</a><a href="Resolvent/index.htm">解決方案</a>';
echo formaturl($gethtm,$surl);
?>

輸出:<a href="http://www.jb51.NET/index.htm">首頁</a><a href="http://www.jb51.NET/Resolvent/index.htm">解決方案</a>
--------- 演示實例 ------------
原始路徑代碼:http://www.newnew.cn/newnewindex.ASPx
輸出演示代碼:http://www.maifp.com/aaa/test.php
以下是函數代碼
復制代碼 代碼如下:
<?php
function formaturl($l1,$l2){
if (preg_match_all("/(<img[^>]+src=/"([^/"]+)/"[^>]*>)|(<a[^>]+href=/"([^/"]+)/"[^>]*>)|(<img[^>]+src='([^']+)'[^>]*>)|(<a[^>]+href='([^']+)'[^>]*>)/i",$l1,$regs)){
foreach($regs[0] as $num => $url){
$l1 = str_replace($url,lIIIIl($url,$l2),$l1);
}
}
return $l1;
}
function lIIIIl($l1,$l2){
if(preg_match("/(.*)(href|src)/=(.+?)( |///>|/>).*/i",$l1,$regs)){$I2 = $regs[3];}
if(strlen($I2)>0){
$I1 = str_replace(chr(34),"",$I2);
$I1 = str_replace(chr(39),"",$I1);
}else{return $l1;}
$url_parsed = parse_url($l2);
$scheme = $url_parsed["scheme"];if($scheme!=""){$scheme = $scheme."://";}
$host = $url_parsed["host"];
$l3 = $scheme.$host;
if(strlen($l3)==0){return $l1;}
$path = dirname($url_parsed["path"]);if($path[0]=="http://"){$path="";}
$pos = strpos($I1,"#");
if($pos>0) $I1 = substr($I1,0,$pos);
//判斷類型
if(preg_match("/^(http|https|ftp):(////|////)(([/w/////+/-~`@:%])+/.)+([/w/////./=/?/+/-~`@/':!%#]|(&)|&)+/i",$I1)){return $l1; }//http開頭的url類型要跳過
elseif($I1[0]=="/"){$I1 = $l3.$I1;}//絕對路徑
elseif(substr($I1,0,3)=="../"){//相對路徑
while(substr($I1,0,3)=="../"){
$I1 = substr($I1,strlen($I1)-(strlen($I1)-3),strlen($I1)-3);
if(strlen($path)>0){
$path = dirname($path);
}
}
$I1 = $l3.$path."/".$I1;
}
elseif(substr($I1,0,2)=="./"){
$I1 = $l3.$path.substr($I1,strlen($I1)-(strlen($I1)-1),strlen($I1)-1);
}
elseif(strtolower(substr($I1,0,7))=="mailto:"||strtolower(substr($I1,0,11))=="Javascript:"){
return $l1;
}else{
$I1 = $l3.$path."/".$I1;
}
return str_replace($I2,"/"$I1/"",$l1);
}
?>

下面的鏈接是學習php正則表達式的地方。在這里留個鏈接,防止丟失。。。

php技術PHP文章采集URL補全函數(FormatUrl),轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 日本综艺大尺度无删减版在线 | 大地影院免费观看视频 | 久久天天躁狠狠躁夜夜躁 | 免费久久狼人香蕉网 | 欧美日韩一二区旡码高清在线 | 日本工口生肉全彩大全 | 免费三级黄色 | 国产成人亚洲综合无 | 做你的爱人BD日本 | 久久国产成人午夜AV影院无码 | 国产美女视频一区二区二三区 | 亚洲国产精品久久人人爱 | 99久久免热在线观看 | 嫩草影院未满十八岁禁止入内 | 欧美精品九九99久久在免费线 | 在线看无码的免费网站 | 亚洲视频在线观 | 久久在精品线影院 | 国产成人免费观看在线视频 | 亚洲精品久久久久久蜜臀 | 久青草国产在视频在线观看 | 伊人精品影院一本到综合 | xxxxhdvideos动漫 | 99视频在线精品免费观看18 | 神马电影院午夜神福利在线观看 | 国产午夜亚洲精品理论片八戒 | 亚洲国产日韩a精品乱码 | 最新国产精品福利2020 | 亚洲 欧美 国产在线视频 | 日日夜夜撸 在线影院 | 欧美人与动交zOZ0 | 亚洲精品免费网站 | 国产偷窥盗摄一区二区 | 女人被弄到高潮叫床免 | 午夜无码国产理论在线 | 亚洲国产精品天堂在线播放 | 性刺激欧美三级在线现看中文 | 国产国语在线播放视频 | 波野结衣qvod | 四虎影5151毛片在线看 | 女女破视频在线观看 |