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 相关文章推荐
PHP mb_convert_encoding 获取字符串编码类型实现代码
Apr 26 PHP
PHPWind 发帖回帖Api PHP版打包下载
Feb 08 PHP
mysql,mysqli,PDO的各自不同介绍
Sep 19 PHP
深入HTTP响应状态码速查表的详解
Jun 07 PHP
php+xml实现在线英文词典查询的方法
Jan 23 PHP
PHP中使用socket方式GET、POST数据实例
Apr 02 PHP
PHP学习笔记(一):基本语法之标记、空白、和注释
Apr 17 PHP
PHP实现导出excel数据的类库用法示例
Oct 15 PHP
PHP HTTP 认证实例详解
Nov 03 PHP
PHP输出XML格式数据的方法总结
Feb 08 PHP
php实现查询功能(数据访问)
May 23 PHP
利用PHP内置SERVER开启web服务(本地开发使用)
Jan 22 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
ZF等常用php框架中存在的问题
2008/01/10 PHP
PHP中include()与require()的区别说明
2010/03/10 PHP
php替换超长文本中的特殊字符的函数代码
2012/05/22 PHP
php实现执行某一操作时弹出确认、取消对话框
2013/12/30 PHP
Javascript 个人笔记(没有整理,很乱)
2007/07/07 Javascript
使用Jquery搭建最佳用户体验的登录页面之记住密码自动登录功能(含后台代码)
2011/07/10 Javascript
使用jQuery+HttpHandler+xml模拟一个三级联动的例子
2011/08/09 Javascript
javascript学习笔记(四) Number 数字类型
2012/06/19 Javascript
Javscript删除数组中指定元素并返回新数组
2014/03/06 Javascript
Javascript window对象详解
2014/11/12 Javascript
js如何打印object对象
2015/10/16 Javascript
javascript函数中的3个高级技巧
2016/09/22 Javascript
详解Angular.js指令中scope类型的几种特殊情况
2017/02/21 Javascript
在bootstrap中实现轮播图实例代码
2017/06/11 Javascript
vue的传参方式汇总和router使用技巧
2018/05/22 Javascript
vue3.0 CLI - 2.2 - 组件 home.vue 的初步改造
2018/09/14 Javascript
layui radio点击事件实现input显示和隐藏的例子
2019/09/02 Javascript
jquery将信息遍历到界面上实例代码
2020/01/21 jQuery
python实现图片批量剪切示例
2014/03/25 Python
Python中自定义函数的教程
2015/04/27 Python
CentOS中使用virtualenv搭建python3环境
2015/06/08 Python
利用Python爬取可用的代理IP
2016/08/18 Python
Django权限机制实现代码详解
2018/02/05 Python
python实现换位加密算法的示例
2018/10/14 Python
python+OpenCV实现车牌号码识别
2019/11/08 Python
M.M.LaFleur官网:美国职业女装品牌
2020/10/27 全球购物
关于Assembly命名空间的三个面试题
2015/07/23 面试题
成都思必达公司C#程序员招聘面试题
2013/06/26 面试题
英文版区域经理求职信
2013/10/23 职场文书
两年的个人工作自我评价
2014/01/10 职场文书
党员承诺书怎么写
2014/05/20 职场文书
干部作风整顿自我剖析材料和整改措施
2014/09/18 职场文书
私用公车造成事故检讨书
2014/11/16 职场文书
小学开学典礼新闻稿
2015/07/17 职场文书
教你怎么用Python操作MySql数据库
2021/05/31 Python
Python django中如何使用restful框架
2021/06/23 Python