也谈截取首页新闻 - 范例
(编辑:jimmy 日期: 2024/11/29 浏览:3 次 )
截取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下调试通过。
有很多截取首页新闻的程序,但是并不能成功。
他们的工作原理无非两种,一种是采用某些网站称之为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下调试通过。
下一篇:PHP4实际应用经验篇(6)