php 文章采集正则代码


Posted in PHP onDecember 28, 2009
//采集html 
function getwebcontent($url){ 
$ch = curl_init(); 
$timeout = 10; 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); 
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1); 
$contents = trim(curl_exec($ch)); 
curl_close($ch); 
return $contents; 
} 
//获得标题和url 
$string = 
getwebcontent('http://www.***.com/learn/zhunbeihuaiyun/jijibeiyun/2'); 
//正则匹配<li>获取标题和地址 
preg_match_all ("/<li><a href=\"\/learn\/article\/(.*)\">(.*)<\/a>/",$string, $out, PREG_SET_ORDER); 
foreach($out as $key => $value){ 
$article['title'][] = $out[$key][2]; 
$article['link'][] = "http://www.***.com/learn/article/".$out[$key][1]; 
} 
//根据url获取文章内容 
foreach($article['link'] as $key=>$value){ 
$content_html = getwebcontent($article['link'][$key]); 
preg_match("/<div id=pagenum_0(.*)>[\s|\S]*?<\/div>/",$content_html,$matches); 
$article[content][$key] = $matches[0]; 
} 
//不转码还真不能保存成文件 
foreach($article[title] as $key=>$value){ 
$article[title][$key] = iconv('utf-8', 'gbk', $value);//转码 
} 
//存入文件 
$num = count($article['title']); 
for($i=0; $i<$num; $i++){ 
file_put_contents("{$article[title][$i]}.txt", $article['content'][$i]); 
} 
?>
PHP 相关文章推荐
使用MaxMind 根据IP地址对访问者定位
Oct 09 PHP
php下mysql数据库操作类(改自discuz)
Jul 03 PHP
php !function_exists(&quot;T7FC56270E7A70FA81A5935B72EACBE29&quot;))代码解密
Jan 07 PHP
php启用zlib压缩文件的配置方法
Jun 12 PHP
php采集文章中的图片获取替换到本地(实现代码)
Jul 08 PHP
PHP、Nginx、Apache中禁止网页被iframe引用的方法
Oct 01 PHP
php字符串过滤与替换小结
Jan 26 PHP
编写PHP脚本来实现WordPress中评论分页的功能
Dec 10 PHP
PHP编程 SSO详细介绍及简单实例
Jan 13 PHP
PHP面向对象程序设计继承用法简单示例
Dec 28 PHP
如何在Laravel5.8中正确地应用Repository设计模式
Nov 26 PHP
PHPExcel实现的读取多工作表操作示例
Apr 14 PHP
PHP array_push 数组函数
Dec 26 #PHP
PHP simple_html_dom.php+正则 采集文章代码
Dec 24 #PHP
在PHP中检查PHP文件是否有语法错误的方法
Dec 23 #PHP
php 常用类整理
Dec 23 #PHP
PHP 源代码压缩小工具
Dec 22 #PHP
php 8小时时间差的解决方法小结
Dec 22 #PHP
PHP 分页原理分析,大家可以看看
Dec 21 #PHP
You might like
PHP CURL模拟登录新浪微博抓取页面内容 基于EaglePHP框架开发
2012/01/16 PHP
色色整理的PHP面试题集锦
2012/03/08 PHP
利用PHP扩展vld查看PHP opcode操作步骤
2013/03/04 PHP
探讨PHP中this,self,parent的区别详解
2013/06/08 PHP
解析PHP高效率写法(详解原因)
2013/06/20 PHP
php保存二进制原始数据为图片的程序代码
2014/10/14 PHP
PHP贪婪算法解决0-1背包问题实例分析
2015/03/23 PHP
php实现插入排序
2015/03/29 PHP
非常有用的40款jQuery 插件推荐(系列二)
2011/12/25 Javascript
jquery图片延迟加载 前端开发技能必备系列
2012/06/18 Javascript
图片放大镜jquery.jqzoom.js使用实例附放大镜图标
2014/06/19 Javascript
浅谈js中的闭包
2015/03/16 Javascript
javascript实现倒计时并弹窗提示特效
2015/06/05 Javascript
使用jQuery操作HTML的table表格的实例解析
2016/03/13 Javascript
值得分享的JavaScript实现图片轮播组件
2016/11/21 Javascript
利用node.js搭建简单web服务器的方法教程
2017/02/20 Javascript
如何理解Vue的.sync修饰符的使用
2017/08/17 Javascript
vue2.0 兄弟组件(平级)通讯的实现代码
2018/01/15 Javascript
网页爬虫之cookie自动获取及过期自动更新的实现方法
2018/03/06 Javascript
angularJs在多个控制器中共享服务数据的方法
2018/09/30 Javascript
jquery+php后台实现省市区联动功能示例
2019/05/23 jQuery
js实现全选和全不选
2020/07/28 Javascript
vue 接口请求地址前缀本地开发和线上开发设置方式
2020/08/13 Javascript
Python利用Faiss库实现ANN近邻搜索的方法详解
2020/08/03 Python
让IE6支持css3,让 IE7、IE8 都支持CSS3
2011/10/09 HTML / CSS
荷兰演唱会和体育比赛订票网站:viagogo荷兰
2018/04/08 全球购物
施华洛世奇西班牙官网:SWAROVSKI西班牙
2019/06/06 全球购物
印度在线购物网站:Paytmmall
2019/07/24 全球购物
莫斯科大型旅游休闲商品超市:Camping.ru
2020/09/16 全球购物
清洁工岗位职责
2014/01/29 职场文书
《最大的“书”》教学反思
2014/02/14 职场文书
2015年12.4全国法制宣传日活动总结
2015/03/24 职场文书
安全知识竞赛主持词
2015/06/30 职场文书
经典人生语录分享:不畏将来,不念过去,笑对当下
2019/12/12 职场文书
Python获取百度热搜的完整代码
2021/04/07 Python
Java完整实现记事本代码
2022/06/16 Java/Android