php 信息采集程序代码
更新时间:2009年03月17日 23:19:14 作者:
通过检测,$c已经是内容页的数据流了,可是$pc这个的正则表达式为什么只匹配<这个字符其他的都没有呢
复制代码 代码如下:
<?
//采集首页地址
$url="http://emotion.pclady.com.cn/skills/";
//获取页面代码
$rs=file_get_contents($url);
//设置匹配正则
//$fp=fopen("text.txt","a");
//$fw=fwrite($fp,$rs);
//fclose($fp);
/*<I class=titles><A
href="http://emotion.pclady.com.cn/skills/0903/376476.html"
target=_blank>留住你身边的好男人</A></I>*/
$preg='/<i\s+class=\"titles\"><a\s+href=\"[^>]+\">(.*)<\/a><\/i>/i';
//进行正则搜索
preg_match_all($preg,$rs,$title);
//计算标题数量
$count=count($title[0]);
echo $count."<br>";
//通过标题数量进行内容采集
for ($i=0;$i<$count;$i++){
//设置内容页地址
$pr='/<a\s+href=\"[^>]+\">/isU';
preg_match_all($pr,$title[0][$i],$jurl);
$substr=substr($jurl[0][0],9);
$curl=substr($substr,0,-18);
//获取内容页代码
$c=file_get_contents($curl);
//设置内容页匹配正则
$pc='/<a\s+href=\"[^>]+\">/i';
//进行正则匹配搜索
preg_match($pc,$c,$content);
//输出标题
echo $title[0][$i]."<br>";
echo $title[1][$i]."<br>";
$concount=count($content[0]);
echo $concount."<br>";
echo $content[0][0];
for ($j=0;$j<$concount;$j++){
}
}
?>
通过检测,$c已经是内容页的数据流了,可是$pc这个的正则表达式为什么只匹配<这个字符其他的都没有呢,是因为我上面用了subsrt()函数吗?还是什么问题?麻烦各位大侠指点迷津啊?
相关文章
php中常量DIRECTORY_SEPARATOR用法深入分析
这篇文章主要介绍了php中常量DIRECTORY_SEPARATOR用法深入分析,涉及针对Linux路径分隔符不支持\的情况,具有一定的实用价值,需要的朋友可以参考下2014-11-11
DISCUZ在win2003环境下 Unable to access ./include/common.inc.php
今天帮客户配置服务器的时候发现的这个问题,也是因为权限问题或因为php的配置问题,如果碰到这样的问题,大家可以参考下面的方法。2011-11-11
自己写的兼容低于PHP 5.5版本的array_column()函数
这篇文章主要介绍了自己写的兼容低于PHP 5.5版本的array_column()函数,array_column是PHP 5.5新增函数,有时在低版本中也可能要用到,需要的朋友可以参考下2014-10-10
PHP Warning: Module ''modulename'' already loaded in问题解决办法
这篇文章主要介绍了PHP Warning: Module 'modulename' already loaded in问题解决办法,本文总结了两种情况,需要的朋友可以参考下2015-03-03


最新评论