知识大全 php正则匹配获取指定url网页页面超级链接地址
Posted 内容
篇首语:怀抱观古今,寝食展戏谑。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 php正则匹配获取指定url网页页面超级链接地址相关的知识,希望对你有一定的参考价值。
在数据采集与页面分析中 常需要抓取给定url页面的内容 或者第二 第三层次深度页面内容
这里是一个测试例子的实现 仅供参考
代码如下
/* 匹配给定页面链接 return:array match[link content all] */ function match_links($host $document) $pattern = /<a( *?)href="( *?)"( *?)>( *?)</a>/i ; preg_match_all($pattern $document $m); return $m;
preg_match_all(" <s*as *?hrefs*=s*([" ])?(?( )( *?) |([^s>]+))[^>]*>?( *?)</a> isx" $document $links); while(list($key $val) = each($links[ ])) if(!empty($val)) if(preg_match("//" $val)) $match[ link ][] = $val; else $match[ link ][] = $host $val; while(list($key $val) = each($links[ ])) if(!empty($val)) if(preg_match("//" $val)) $match[ link ][] = $val; else $match[ link ][] = $host $val; while(list($key $val) = each($links[ ])) if(!empty($val)) $match[ content ][] = $val; while(list($key $val) = each($links[ ])) if(!empty($val)) $match[ all ][] = $val; return $match[ link ];
/* 从给定url中获取页面文本内容 */ function get_content_from_url($url) $str = @file_get_contents($url); if(mb_check_encoding($str "GBK")) $str = iconv("GBK" "UTF " $str); $str = strip_tags($str); // 过滤标签 /* $str = preg_replace( "@<script( *?)</script>@is" "" $str ); $str = preg_replace( "@<iframe( *?)</iframe>@is" "" $str ); $str = preg_replace( "@<style( *?)</style>@is" "" $str ); $str = preg_replace( "@<( *?)>@is" "" $str ); */ //过滤非汉字字符 preg_match_all( /[x e x fff]+/u $str $matches); $str = join( $matches[ ]); if(!$str) return NULL; return $str;
function get_content($url $depth) if(!$url || $depth < ) return false;
while($depth > ) $str = @file_get_contents($url); if(!$str) return false;
$parseurl = parse_url($url); if($parseurl[ host ]) $host = $parseurl[scheme] "://" $parseurl[ host ]; $arrlink = match_links($host $str); $arr_url = array_unique($arrlink);
$depth ; foreach($arr_url as $url) $content = get_content($url $depth); //递归调用
cha138/Article/program/PHP/201311/21224相关参考
asp教程获取字符串中url地址函数本文章提供了三款利用asp的正则获取字符串中url地址自定义函数哦三个方法的实现原理都是获取以开的url地址哦onerrorgotoz dimurlkeyna
知识大全 解析php通过cookies获取远程网页的指定代码
cha138/Article/program/PHP/201311/21255
最近做个页面需要用javascript获取url参数可发现网上的东西实在是多了错误也实在是多啊真晕浪费了我不少时间于是我便总结一下一个好用的就可以了先声明下用正则是简单但多浏览器的兼容性和速度不敢
php利用正则表达式取出图片的URL 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 复制代码代码
PHP正则匹配中文字母数字正则表达式 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 方法一 代
在ASP.NET中自动给URL加上超级链接 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 作为一
正则表达式在PHP中的应用在PHP应用中正则表达式主要用于•正则匹配根据正则表达式匹配相应的内容•正则替换根据正则表达式匹配内容并替换•正则分割根据正则表达式分割字符串在PHP中有两类正则表达式函
ASP获取地址栏URL地址方法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 如果要想获取这样的
在ASP.NET中自动给URL地址加上超链接 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 作为
如果你的url链接是相对路径“static/mapicss”你想把他批量替换成绝对路径“那么你可以这样做写一个PHP文件把需要替换的网址写进去这个代码的意思就是把#BASE_URL#替换成这句话的