也谈截取首页新闻 - 范例
发布时间:2006-10-14 2:44:58   收集提供:gaoqian
截取yahoo.com.cn新闻[仅供实验]

有很多截取首页新闻的程序,但是并不能成功。
他们的工作原理无非两种,一种是采用某些网站称之为backend的后端数据库接口,另一种则是硬声声的根据html代码截取。本程序采用的是后者。应该说,容错性能比较好。
<?
$open = fopen("http://www.yahoo.com.cn/index.html", "r");//网页地址
$read = fread($open, 15000);
fclose($open);

$search = eregi("<!-- Start in the news -->(.*)<!-- End in the news -->", $read, $printing);//截取一段源代码,最好先分析一下源代码
//以下开始取出容余源代码
$printing[1] = str_replace("href=\"/homer/?", "href=\"", $printing[1]);
$printing[1] = str_replace("href=\"/headlines/fullcoverage/", "href=\"http://www.yahoo.com.cn/headlines/fullcoverage/", $printing[1]);
$printing[1] = str_replace("</td></tr><tr><td valign=top align=right>", "", $printing[1]);
$printing[1] = str_replace("</td><td>", "", $printing[1]);
$printing[1] = str_replace(" class=sbody", "", $printing[1]);
$printing[1] = str_replace("</small>", "", $printing[1]);

$content = $printing[1];
$content = explode("-", $content);

$headlines = sizeof($content);

for ($i = 0; $i < $headlines; $i++) {

print "新闻".($i+1).") : $content[$i]<BR>";//激动人心的时刻到了!显示出来了!

}

?>


在php3/php4 apache下调试通过。
 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50