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

本文为一个提取一批新闻网页中的文本的小程序,它可以将各篇新闻的内容存为以该新闻标题为文件名的文本文件。如有更好的处理方法,请和我联系:
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);
        }
     }
  }
}
?> 

时间: 2024-09-20 14:46:34

同时提取多条新闻中的文本一例_php基础的相关文章

新闻分类录入、显示系统_php基础

本系统可以录入标题.内容.图片.相关软件,显示时会根据是否有有图片和相关软件来判断是否显示该项内容,打开页面显示的是最新的一片文章,点击目录会显示之前的文章.     建立channelimages和channelsoft目录,并把权限设为777. ********************************* news表结构 ********************************* # Host: localhost Database : yourdb # -----------

PHP中在数据库中保存Checkbox数据(2)_php基础

这代码是非常简单的,你很快地就看完了吧.主要的工作有两个函数完成:"get_checkbox_labels" 和 "make_checkbox_html".其中 "get_checkbox_labels" 查询表const_skills 并且返回一个对象数组,每一个对象有一个id值和相应的技能名称.我们传送这个数组和其它一些参数给"make_checkbox_html" ,这个函数将返回一个字串,用来生成checkbox的ht

动态新闻发布的实现及其技巧_php基础

做网站要做的有一定的规模,动态的新闻发布是必不可少的.实现的方法有很多,这里建议用文本文件来生成,又快又简单省事.好吧,让我们立即着手工作吧. 首先,我们假设已经有一个文件夹名为 "news",在"c://news"下,用来存储新闻的文本.并且我们假设这些文本的名字就是所要发布的新闻的标题. 1,首先,我们限读取文件夹的指针.     $handle=dir("c://news"); 2,用一个while语句,获取各个文本文件的指针,并且将其一个

PHP中在数据库中保存Checkbox数据(1)_php基础

介绍 checkbox是一个非常有用的页面表单项,在让用户进行多重选择的情况下,它甚至可以允许用户选择全部项目或是一个都不选.但是,尽管这是一个非常优秀的表单元素,但在我们的工作中,在如何正确地保存选择项这方面总存在一些易混淆的情况发生.本文将描述在遵循好的数据库设计原则的方法下,如何把checkbox选择项正确地保存在数据库中. 要求 本文将阐述如何把选择项正确地保存在用户数据库中的方法.尽管这里包括了有用的PHP代码,但我将从数据库设计的观点来表达它们,所以,你可以很方便地使用任何一个数据库

在Zeus Web Server中安装PHP语言支持_php基础

前言Zeus是一个运行于Unix下的非常优秀的Web Server,而PHP则是Unix下一个非常优秀的后台脚本语言. 这两个产品都是为非常喜欢的产品.为什么要写这样的一个Howto呢?是因为有大量的网站脚本是使用PHP开发的, 而这些程序运行在Zeus下也是一个非常好的选择.写这份文档的目的在于能让大家的PHP系统良好的运行于Zeus服务器上. 很早的时候我写过一份整合Zeus和PHP的文章,它主要是讲如何将PHP以FastCGI的本地调用方式来运行于Zeus中的, 本份Howto主要是来讲如

php 中的str_replace 函数总结_php基础

字符串取代. 语法: string str_replace(string needle, string str, string haystack); 返回值: 字符串 函数种类: 资料处理 内容说明 本函数将字符串 str 代入 haystack 字符串中,将所有的 needle 置换成 str.mlevine@adtraq.com (11-Apr-1999) 指出在 PHP 3.0.7 版,本函数有些 bug,而 nadeem@bleh.org (05-Jun-1999) 补充在 PHP 3.

如何在PHP中使用Oracle数据库(6)_php基础

利用OCI列出全部数据表'email_info'中的数据 同上,只不过用OCI来写   相关PHP代码: PutEnv("ORACLE_SID=ORASID"); $connection = OCILogon ("username","password"); if ($connection == false){   echo OCIError($connection)." ";   exit; } $query = "

如何在PHP中使用Oracle数据库(5)_php基础

利用ORA列出全部数据表'email_info'中的数据 下面,我们将逐条读出数据库的内容,并以html表格形式显示'email_info'数据表中的数据   相关PHP代码: PutEnv("ORACLE_SID=ORASID"); $connection = Ora_Logon ("username","password"); if ($connection == false){   echo Ora_ErrorCode($connectio

如何在PHP中使用Oracle数据库(4)_php基础

利用OCI向数据表 'email_info' 输入数据 同上,只不过用OCI来写   相关PHP代码: if ($submit == "click"){   // The submit button was clicked!   // Get the input for fullname and email then store it in the database.   PutEnv("ORACLE_SID=ORASID");   $connection = OC