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 相关文章推荐
PHP中实现图片的锐化
Oct 09 PHP
新手配置 PHP 调试环境(IIS+PHP+MYSQL)
Jan 10 PHP
php笔记之常用文件操作
Oct 12 PHP
PHP 小心urldecode引发的SQL注入漏洞
Oct 27 PHP
使用php-timeit估计php函数的执行时间
Sep 06 PHP
Laravel中注册Facades的步骤详解
Mar 16 PHP
中高级PHP程序员应该掌握哪些技术?
Sep 23 PHP
PHP实现多图上传(结合uploadify插件)思路分析
Nov 30 PHP
PHP 与 UTF-8 的最佳实践详细介绍
Jan 04 PHP
laravel框架添加数据,显示数据,返回成功值的方法
Oct 11 PHP
PHP实现简单用户登录界面
Oct 23 PHP
thinkPHP框架乐观锁和悲观锁实例分析
Oct 30 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下打开phpMyAdmin出现403错误的问题解决方法
2013/05/23 PHP
php生成图片验证码的方法
2016/04/15 PHP
PHP实现批量修改文件名的方法示例
2019/09/18 PHP
超级24小时弹窗代码 24小时退出弹窗代码 100%弹窗代码(IE only)
2010/06/11 Javascript
基于jquery的可多选的下拉列表框
2012/07/20 Javascript
通过url查找a元素并点击
2014/04/09 Javascript
JavaScript实现防止网页被嵌入Frame框架的代码分享
2014/12/29 Javascript
Js实现无刷新删除内容
2015/04/29 Javascript
JavaScript运动减速效果实例分析
2015/08/04 Javascript
纯JavaScript代码实现移动设备绘图解锁
2015/10/16 Javascript
JavaScript中循环遍历Array与Map的方法小结
2016/03/12 Javascript
分析js闭包引起的事件注册问题
2016/03/29 Javascript
javascript正则表达式中分组详解
2016/07/17 Javascript
webpack独立打包和缓存处理详解
2017/04/03 Javascript
vue-cli webpack 引入jquery的方法
2018/01/10 jQuery
React为 Vue 引入容器组件和展示组件的教程详解
2018/05/03 Javascript
vue 通过 Prop 向子组件传递数据的实现方法
2020/10/30 Javascript
[00:32]DOTA2上海特级锦标赛 COL战队宣传片
2016/03/04 DOTA
Python排序搜索基本算法之冒泡排序实例分析
2017/12/09 Python
python中字符串比较使用is、==和cmp()总结
2018/03/18 Python
python2和python3在处理字符串上的区别详解
2019/05/29 Python
Python计算一个点到所有点的欧式距离实现方法
2019/07/04 Python
Django 实现admin后台显示图片缩略图的例子
2019/07/28 Python
python机器学习包mlxtend的安装和配置详解
2019/08/21 Python
让你的Python代码实现类型提示功能
2019/11/19 Python
CSS3 二级导航菜单的制作的示例
2018/04/02 HTML / CSS
卡骆驰德国官方网站:Crocs德国
2019/03/29 全球购物
品恩科技软件测试面试题
2014/10/26 面试题
出纳岗位职责
2013/11/09 职场文书
市场营销管理毕业生自荐信
2014/03/03 职场文书
新年寄语大全
2014/04/12 职场文书
公司踏青活动方案
2014/08/16 职场文书
班级光棍节联谊会策划书
2014/10/10 职场文书
工作作风整顿个人剖析材料
2014/10/11 职场文书
三峡大坝导游词
2015/01/31 职场文书
Navicat Premium自定义 sql 标签的创建方式
2022/09/23 数据库