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 相关文章推荐
PHPMailer邮件类利用smtp.163.com发送邮件方法
Sep 11 PHP
PHP 5.3.0 安装分析心得
Aug 07 PHP
php中一个完整表单处理实现代码
Nov 10 PHP
php设计模式之单例、多例设计模式的应用分析
Jun 30 PHP
php 模拟 asp.net webFrom 按钮提交事件的思路及代码
Dec 02 PHP
ThinkPHP中的三大自动简介
Aug 22 PHP
wamp安装后自定义配置的方法
Aug 23 PHP
Yii入门教程之Yii安装及hello world
Nov 25 PHP
typecho插件编写教程(四):插件挂载
May 28 PHP
PHP中抽象类和抽象方法概念与用法分析
May 24 PHP
深入讲解PHP的对象注入(Object Injection)
Mar 01 PHP
php使用PDO下exec()函数查询执行后受影响行数的方法
Mar 28 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中3des加密代码(完全与.net中的兼容)
2012/08/02 PHP
php实现字符串反转输出的方法
2015/03/14 PHP
PHP7新增运算符用法实例分析
2016/09/26 PHP
关于恒等于(===)和非恒等于(!==)
2007/08/20 Javascript
[原创]来自ImageSee官方 JavaScript图片浏览器
2008/01/16 Javascript
Jquery Ajax学习实例5 向WebService发出请求,返回泛型集合数据的异步调用
2010/03/17 Javascript
JavaScript DOM 编程艺术(第2版)读书笔记(JavaScript的最佳实践)
2013/10/01 Javascript
js控制href内容的连接内容的变化示例
2014/04/30 Javascript
JS获取iframe中marginHeight和marginWidth属性的方法
2015/04/01 Javascript
jQuery实现三级联动效果
2017/03/02 Javascript
ThinkPHP+jquery实现“加载更多”功能代码
2017/03/11 Javascript
Bootstrap实现基于carousel.js框架的轮播图效果
2017/05/02 Javascript
实例详解JavaScript中setTimeout函数的执行顺序
2017/07/12 Javascript
Vue项目中最新用到的一些实用小技巧
2018/11/06 Javascript
微信小程序控制台提示warning:Now you can provide attr &quot;wx:key&quot; for a &quot;wx:for&quot; to improve performance解决方法
2019/02/21 Javascript
微信小程序Echarts覆盖正常组件问题解决
2019/07/13 Javascript
el-input 标签中密码的显示和隐藏功能的实例代码
2019/07/19 Javascript
layer iframe 设置关闭按钮的方法
2019/09/12 Javascript
vue源码中的检测方法的实现
2019/09/26 Javascript
小程序点餐界面添加购物车左右摆动动画
2020/09/23 Javascript
python中getattr函数使用方法 getattr实现工厂模式
2014/01/20 Python
Python嵌套列表转一维的方法(压平嵌套列表)
2018/07/03 Python
Python读写文件模式和文件对象方法实例详解
2019/09/17 Python
python 实现矩阵按对角线打印
2019/11/29 Python
解决tensorflow添加ptb库的问题
2020/02/10 Python
python 链接sqlserver 写接口实例
2020/03/11 Python
python 爬取百度文库并下载(免费文章限定)
2020/12/04 Python
Django 实现图片上传和下载功能
2020/12/31 Python
通过Canvas及File API缩放并上传图片完整示例
2013/08/08 HTML / CSS
给定一个时间点,希望得到其他时间点
2013/11/07 面试题
甜品蛋糕店创业计划书范文
2014/02/06 职场文书
购房意向书范本
2014/04/01 职场文书
应聘会计求职信
2014/06/11 职场文书
转让协议书范本
2014/09/13 职场文书
2014学习优秀共产党员先进事迹材料思想汇报
2014/09/14 职场文书
python3 删除所有自定义变量的操作
2021/04/08 Python