PHP 超链接 抓取实现代码


Posted in PHP onJune 29, 2009

通用HTML标准超链接参数取得正则表达式测试
因为最近要做一个类似专业搜索引擎的东西,需要抓取网页的所有超链接。
大家帮忙测试一下子,下面的代码是否可以针对所有的标准超链接。
测试代码如下:

<?php 
// -------------------------------------------------------------------------- 
// File name : Noname1.php 
// Description : 通用链接参数获取正则表达式测试 
// Requirement : PHP4 (http://www.php.net) 
// Copyright(C), HonestQiao, 2005, All Rights Reserved. 
// Author: HonestQiao (honestqiao@hotmail.com) 
// 参数说明: 
// $strSource: 包含标准链接的HTML网页 
// $strResult: 处理的结果 
// 附加说明: 
// 标准链接,使用<a></a>形势包含的链接 
// -------------------------------------------------------------------------- 
$strSource = <<<HTML 
<a href=1.htm>t1</a> 
<a href='2.htm'>t2</a> 
<a href="3.htm">t3</a> 
<a href=4.htm class=link>t4</a> 
HTML; 
preg_match_all('/<a.*?(?: \\t\\r\\n)?href=[\'"]?(.+?)[\'"]?(?:(?: \\t\\r\\n)+.*?)?>(.+?)<\/a.*?>/sim', $strSource, $strResult, PREG_PATTERN_ORDER); 
for($i = 0; $i < count($strResult[1]); $i++) 
{ 
printf("%d href=(%s) title=(%s) \n", $i, $strResult[1][$i], $strResult[2][$i]); 
} 
?>

如果您的测试数据,符合标准链接,但是此处没有被处理出来,请告诉我测试数据,以及你的测试环境。
谢谢。
PHP 相关文章推荐
第1次亲密接触PHP5(1)
Oct 09 PHP
一个ftp类(ini.php)
Oct 09 PHP
如何把PHP转成EXE文件
Oct 09 PHP
PHP Cookie的使用教程详解
Jun 03 PHP
探讨PHP JSON中文乱码的解决方法详解
Jun 06 PHP
smarty内置函数section的用法
Jan 22 PHP
Yii2.0 Basic代码中路由链接被转义的处理方法
Sep 21 PHP
php判断是否连接上网络的方法实例详解
Dec 14 PHP
PHP实现广度优先搜索算法(BFS,Broad First Search)详解
Sep 16 PHP
php实现微信模板消息推送
Mar 30 PHP
PHP中的empty、isset、isnull的区别与使用实例
Mar 22 PHP
gearman中任务的优先级和返回状态实例分析
Feb 27 PHP
PHP 文件上传功能实现代码
Jun 24 #PHP
php addslashes 函数详细分析说明
Jun 23 #PHP
PHP n个不重复的随机数生成代码
Jun 23 #PHP
PHP 七大优势分析
Jun 23 #PHP
php 404错误页面实现代码
Jun 22 #PHP
PHP 多进程 解决难题
Jun 22 #PHP
PHP 高级课程笔记 面向对象
Jun 21 #PHP
You might like
php实现jQuery扩展函数
2009/10/30 PHP
php实现JWT(json web token)鉴权实例详解
2019/11/05 PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
2020/03/24 PHP
一些技巧性实用js代码小结
2009/10/14 Javascript
基于JQuery框架的AJAX实例代码
2009/11/03 Javascript
jQuery方法简洁实现隔行换色及toggleClass的使用
2013/03/15 Javascript
Ajax提交与传统表单提交的区别说明
2014/02/07 Javascript
fixedBox固定div漂浮代码支持ie6以上大部分主流浏览器
2014/06/26 Javascript
javascript检测浏览器的缩放状态实现代码
2014/09/28 Javascript
Javascript学习笔记之函数篇(六) : 作用域与命名空间
2014/11/23 Javascript
node.js中的fs.lchmodSync方法使用说明
2014/12/16 Javascript
详解AngularJS控制器的使用
2016/03/09 Javascript
深入浅出 jQuery中的事件机制
2016/08/23 Javascript
关于vue.extend和vue.component的区别浅析
2017/08/16 Javascript
使用JS实现气泡跟随鼠标移动的动画效果
2017/09/16 Javascript
如何封装了一个vue移动端下拉加载下一页数据的组件
2019/01/06 Javascript
浅谈JavaScript面向对象--继承
2019/03/20 Javascript
微信接入之获取用户头像的方法步骤
2019/09/23 Javascript
解决vue自定义全局消息框组件问题
2019/11/22 Javascript
[01:38]DOTA2第二届亚洲邀请赛中国区预选赛出线战队晋级之路
2017/01/17 DOTA
[22:59]VGJ.S vs VG 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
详解Python中的Numpy、SciPy、MatPlotLib安装与配置
2017/11/17 Python
python微信公众号之关键词自动回复
2018/06/15 Python
对python csv模块配置分隔符和引用符详解
2018/12/12 Python
TensorFlow 显存使用机制详解
2020/02/03 Python
python pptx复制指定页的ppt教程
2020/02/14 Python
在线学习西班牙语、法语或其他语言:Babbel.com
2018/02/07 全球购物
三好学生自我鉴定
2013/12/17 职场文书
自我鉴定注意事项
2014/01/19 职场文书
家长写给孩子的评语
2014/04/18 职场文书
汽修专业自荐信
2014/07/07 职场文书
2016应届毕业生实习评语
2015/12/01 职场文书
如何把新闻人物写得立体、鲜活?
2019/08/14 职场文书
Win11 Build 21996.1 Dev版怎么样? win11系统截图欣赏
2021/11/21 数码科技
vue3获取当前路由地址
2022/02/18 Vue.js
宫崎骏十大动画电影,宫崎骏好看的动画电影排名
2022/03/22 日漫