PHP 采集获取指定网址的内容


Posted in PHP onJanuary 05, 2010

参考别人想法变成自己的想法,你会发现慢慢下来以后你就拥有了临时解决很多问题的思路与方法。

<?php 
/* 
功能:获取页面内容,存储下来阅读; lost63 
*/ 
Class GetUrl{ 
var $url; //地址 
var $result; //结果 
var $content; //内容 
var $list; //列表 
function GetUrl($url){ 
$this->url=$url; 
$this->GetContent(); 
$this->GetList(); 
$this->FileSave(); 
//print_r($this->list[2]); 
} 
private function GetContent(){ 
$this->result=fopen($this->url,"r"); 
while(!feof($this->result)){ 
$this->content.=fgets($this->result,9999); 
} 
} 
private function GetList(){ 
preg_match_all('/<a(.*?)href="(.*?)">(.*?)<\/a>/',$this->content,$this->list); 
$this->list[2]=array_unique($this->list[2]); //移除相同的值 
while(list($key,$value)=each($this->list[2])){ 
if(strpos($value,".html")==0||strpos($value,"jiaocheng")==0){ 
unset($this->list[2][$key]); 
}else{ 
$this->list[2][$key]=substr($value,0,strpos($value,".html")).".html"; //去掉不需要的标签 
} 
} 
} 
private function FileSave(){ 
foreach($this->list[2] as $value){ 
$this->url=$value; //重新赋值 
$this->content=null; 
$this->GetContent(); //提取内容 
preg_match_all('/<title>(.*?)<\/title>/',$this->content,$files); //取标题 
$filename=$files[1][0].".html"; //存储名 
$content=$this->str_cut($this->content,'http://pagead2.googlesyndication.com/pagead/show_ads.js','<div id="article_detail">'); 
$file=fopen($filename,"w"); 
fwrite($file,$content); 
fclose($file); 
echo $filename."保存 OK<br>\n"; 
} 
} 
function str_cut($str ,$start, $end) { 
$content = strstr( $str, $start ); 
$content = substr( $content, strlen( $start ), strpos( $content, $end ) - strlen( $start ) ); 
return $content; 
} 
} 
$w=new GetUrl("http://www.ijavascript.cn/jiaocheng/javascript-jiaocheng-352.html"); 
?>
PHP 相关文章推荐
POSIX 风格和兼容 Perl 风格两种正则表达式主要函数的类比(preg_match, preg_replace, ereg, ereg_replace)
Oct 12 PHP
php实现无限级分类实现代码(递归方法)
Jan 01 PHP
PHP性能优化准备篇图解PEAR安装
Dec 05 PHP
for循环连续求和、九九乘法表代码
Feb 20 PHP
php正则表达匹配中文问题分析小结
Mar 25 PHP
PHP制作图形验证码代码分享
Oct 23 PHP
PHP对文件进行加锁、解锁实例
Jan 23 PHP
php 运算符与表达式详细介绍
Nov 30 PHP
php实现微信企业号支付个人的方法详解
Jul 26 PHP
PHP基于迭代实现文件夹复制、删除、查看大小等操作的方法
Aug 11 PHP
PHP addcslashes()函数讲解
Feb 03 PHP
关于Laravel参数验证的一些疑与惑
Nov 19 PHP
php 无极分类(递归)实现代码
Jan 05 #PHP
php 文件上传代码(限制jpg文件)
Jan 05 #PHP
php下将XML转换为数组
Jan 01 #PHP
PHP 巧用数组降低程序的时间复杂度
Jan 01 #PHP
使用PHP获取网络文件的实现代码
Jan 01 #PHP
php中计算时间差的几种方法
Dec 31 #PHP
php 操作excel文件的方法小结
Dec 31 #PHP
You might like
对PHP语言认识上需要避免的10大误区
2014/06/12 PHP
php恢复数组的key为数字序列的方法
2015/04/28 PHP
PHP使用PHPexcel导入导出数据的方法
2015/11/14 PHP
JQuery 学习笔记 选择器之五
2009/07/23 Javascript
cookie.js 加载顺序问题怎么才有效
2013/07/31 Javascript
jQuery父级以及同级元素查找介绍
2013/09/04 Javascript
jquery引用方法时传递参数原理分析
2014/10/13 Javascript
JS往数组中添加项性能分析
2015/02/25 Javascript
使用struts2+Ajax+jquery验证用户名是否已被注册
2016/03/22 Javascript
js HTML5手机刮刮乐代码
2020/09/29 Javascript
基于jQuery和Bootstrap框架实现仿知乎前端动态列表效果
2016/11/09 Javascript
js生成随机数方法和实例
2017/01/17 Javascript
利用transition实现文字上下抖动的效果
2017/01/21 Javascript
node作为中间服务层如何发送请求(发送请求的实现方法详解)
2018/01/02 Javascript
基于vue实现可搜索下拉框定制组件
2020/03/26 Javascript
解决vue-loader加载不上的问题
2020/10/21 Javascript
总结Python编程中函数的使用要点
2016/03/20 Python
浅谈python中set使用
2016/06/30 Python
Python中防止sql注入的方法详解
2017/02/25 Python
python实现按长宽比缩放图片
2018/06/07 Python
pandas求两个表格不相交的集合方法
2018/12/08 Python
Python字符串hashlib加密模块使用案例
2020/03/10 Python
Python TestSuite生成测试报告过程解析
2020/07/23 Python
Html5 Canvas动画基础碰撞检测的实现
2018/12/06 HTML / CSS
美国按摩椅批发网站:Titan Chair
2018/12/27 全球购物
ellesse美国官方商店:意大利高级运动服品牌
2019/10/29 全球购物
美国相机和电子产品零售商:Beach Camera
2020/11/26 全球购物
娇韵诗香港官网:Clarins香港
2020/08/13 全球购物
物业管理员岗位职责范文
2013/11/25 职场文书
中专生职业生涯规划书范文
2013/12/29 职场文书
运动会通讯稿50字
2014/01/30 职场文书
教师岗位职责
2015/02/03 职场文书
优质服务心得体会(共4篇)
2016/01/22 职场文书
《吃水不忘挖井人》教学反思
2016/02/22 职场文书
微软Win11有哪些隐藏功能? windows11多个功能汇总
2021/11/21 数码科技
Spring Cloud OpenFeign模版化客户端
2022/06/25 Java/Android