龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

新浪新闻采集程序

时间:2014-07-22 14:48来源: 作者: 点击:
分享到:
原创。利用正则表达式提取内容信息
原创。利用正则表达式提取内容信息
<?php
    //error_reporting(0);
	$date=date("Ymd");
	//echo $date;
	$url="http://top.finance.sina.com.cn/ws/GetTopDataList.php?top_type=day&top_cat=all&top_time=".$date."&top_show_num=20&top_order=ASC";
	$doc=file_get_contents($url);
	header("Content-Type:text/html;charset=gb2312");//UNICODE转GB2312
	//echo $doc;
	preg_match_all('/"url":".*l/U',$doc,$article);//获取文章列表
	$article=current($article);//二维数组转一维数组
	//print_r($article);
	$rule="/\"url\":(.*)\"\"/";
	function OnlyUrl($string){
	   $string=stripslashes($string);
	   $string=str_replace('"url":"',"",$string);
	   return $string; 
	}
	
	function GetTitle($url){  //获取文章标题
	  $doc=file_get_contents($url);
	  $rule="/<h1 (.*)<\/h1>/";
	  preg_match($rule,$doc,$result);
	  echo $result;
	}
    foreach($article as &$value){
	    $value=OnlyUrl($value);
	}//提取了URL 
?>
<?php
  function GetTitle($url){  //获取文章标题
	$rule="/<h1 (.*)<\/h1>/";
	preg_match_all($rule,$doc,$result);
	$rule="/>(.*)</";//截掉<h1></h1>
	preg_match($rule,$result[0][1],$title);
	return $title[1];
  }
  function GetContent($url){
    $doc=file_get_contents($url);//打开网页
  // echo $doc; 
    $rule="/publish_helper(.*)publish_helper_end/xs";
	preg_match($rule,$doc,$result);//取出正文部分
	//echo $result[0];
	$rule="/publish_helper(.*)<\/blockquote>/xs";
	preg_match($rule,$result[0],$out);//取出链接部分
	//print_r($out);
	$content=str_replace($out[0],"",$result[0]);//提取纯文字段的内容
	echo $content;
  }
?>
精彩图集

赞助商链接