WEB开发网
开发学院WEB开发PHP 同时提取多条新闻中的文本一例 阅读

同时提取多条新闻中的文本一例

 2001-02-06 16:32:46 来源:WEB开发网   
核心提示:本文为一个提取一批新闻网页中的文本的小程序,它可以将各篇新闻的内容存为以该新闻标题为文件名的文本文件,同时提取多条新闻中的文本一例,如有更好的处理方法,请和我联系: lwx3069@sina.com 这里以人民网中的“今日要闻”下的新闻为例. <?php ($url) ? "" : $url
本文为一个提取一批新闻网页中的文本的小程序,它可以将各篇新闻的内容存为以该新闻标题为文件名的文本文件。如有更好的处理方法,请和我联系:
lwx3069@sina.com
  这里以人民网中的“今日要闻”下的新闻为例.
<?php
($url) ? "" : $url = "http://www.unn.com.cn/GB/channel2/3/11/index.html";    // 今日要闻
if(isset($url)&&$url!="")    {
  $str = implode("",file($url));
  $str_ary = explode("<ul>",$str);
  $str_ary = explode("<li>",trim($str_ary[1]));
  for ($i=0; $i<8; $i++)    {
   if (strlen(trim($str_ary[$i]))<3){
   continue;
   }
   echo "新闻".$i.":".$str_ary[$i];
   $str1=strstr("$str_ary[$i]",'<a href="/');
   $str2=strstr("$str_ary[$i]",'" target');
   $len1=strlen("$str1");
   $len2=strlen("$str2");
   $len=$len1-$len2;
   $url=substr("$str1",10,$len-10);
   if (strlen(trim($url))!=0) {
     $url = "http://www.unn.com.cn/".$url;
     define(CONTENTS_DIR,"./contents/");
     if(isset($url)&&$url!="")    {
      $str = implode("",file($url));
      $str1=explode('<div align="right">',$str);      //去掉文件没用的上半部分
      $str2 = explode('<h4 align="center">  </h4>',$str1[1]);
      //取出文件的下半部分,并去掉没用的下半部分,这时得到的都是有用的
      $str3=explode('</font><font size="+2"><b><font size="3">',$str2[0]);  //从整个有用部分取出文件标题和正文
      $str4=explode('</div>',$str2[0]);  //取出日期和时间
      $str5=explode('</font></b></font><font size="2">',$str3[1]);   //从标题和正文部分取出标题
      $title=str_replace("<br>","",$str5[0]);
      $str3=explode('<p><font size="2">',$str2[0]);     //从整个有用部分取出文件正文
      $str3[1]=str_replace('<br><br>  ',"\n"."  ",$str3[1]);
      $str3[1]=str_replace(' ',"",$str3[1]);
      $str3=strip_tags($str3[1]);
      $pf=trim($title).".txt";
      $ppf=fopen(CONTENTS_DIR."$pf",'w');
      fputs($ppf,$title);
      fputs($ppf,"$str4[0]");
      fputs($ppf,$str3);
    }
   }
 }
}
?> 

Tags:同时 提取 多条

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接