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 相关文章推荐
Excel数据导入Mysql数据库的实现代码
Jun 05 PHP
php将数据库中所有内容生成静态html文档的代码
Apr 12 PHP
深入for,while,foreach遍历时间比较的详解
Jun 08 PHP
php中\r \r\n \t的区别示例介绍
Feb 08 PHP
PHP获取栏目的所有子级和孙级栏目的ID号示例
Apr 01 PHP
Laravel 4 初级教程之安装及入门
Oct 30 PHP
set_exception_handler函数在ThinkPHP中的用法
Oct 31 PHP
YII2.0之Activeform表单组件用法实例
Jan 09 PHP
静态html文件执行php语句的方法(推荐)
Nov 21 PHP
PHP中trait使用方法详细介绍
May 21 PHP
php微信开发之关键词回复功能
Jun 13 PHP
Laravel框架Eloquent ORM修改数据操作示例
Dec 03 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调用三种数据库的方法(2)
2006/10/09 PHP
PHP获取当前文件所在目录 getcwd()函数
2009/05/13 PHP
Yii数据读取与跳转参数传递用法实例分析
2016/07/12 PHP
关于 Laravel Redis 多个进程同时取队列问题详解
2017/12/25 PHP
用函数式编程技术编写优美的 JavaScript
2006/11/25 Javascript
javascript 判断数组是否已包含了某个元素的函数
2010/05/30 Javascript
jQuery jqgrid 对含特殊字符json 数据的 Java 处理方法
2011/01/01 Javascript
jquery 文本上下无缝滚动,鼠标放上去就停止 小例子
2013/06/05 Javascript
通过JavaScript使Div居中并随网页大小改变而改变
2013/06/24 Javascript
解析js原生方法创建表格效率测试
2013/07/08 Javascript
利用js(jquery)操作Cookie的方法说明
2013/12/19 Javascript
JS实现淡蓝色简洁竖向Tab点击切换效果
2015/10/06 Javascript
关于JS中的apply,call,bind的深入解析
2016/04/05 Javascript
Bootstrap选项卡与Masonry插件的完美结合
2016/07/06 Javascript
Angular2学习笔记——详解NgModule模块
2016/12/02 Javascript
javascript Function函数理解与实战
2017/12/01 Javascript
微信小程序提取公用函数到util.js及使用方法示例
2019/01/10 Javascript
node.js Promise对象的使用方法实例分析
2019/12/26 Javascript
使用python实现正则匹配检索远端FTP目录下的文件
2015/03/25 Python
Python正则表达式匹配HTML页面编码
2015/04/08 Python
windows下搭建python scrapy爬虫框架步骤
2018/12/23 Python
安装好Pycharm后如何配置Python解释器简易教程
2019/06/28 Python
Python线程障碍对象Barrier原理详解
2019/12/02 Python
Python使用configparser读取ini配置文件
2020/05/25 Python
Python学习之路安装pycharm的教程详解
2020/06/17 Python
Keras保存模型并载入模型继续训练的实现
2021/02/20 Python
英国玛莎百货美国官网:Marks & Spencer美国
2018/11/06 全球购物
华为慧通面试题
2012/09/11 面试题
网络体系结构及协议的定义
2014/03/13 面试题
副总经理工作职责
2013/11/28 职场文书
创建无烟单位实施方案
2014/03/29 职场文书
债务追讨授权委托书范本
2014/10/16 职场文书
陕西导游词
2015/02/04 职场文书
大国崛起观后感
2015/06/02 职场文书
公司年会主持词范文!
2019/05/07 职场文书
windows安装python超详细图文教程
2021/05/21 Python