在我们的例子里,我们假设你对在自己的网站上显示来自于Slashdot的最新奇客(geek)新闻感兴趣。Slashdot的RSS feed的URL在这里。列表A里的脚本会取回、剖析这个feed,然后使用XML::RSS:把它转换成为人们可读的HTML页面。
把这段脚本放到你Web服务器的cgi-bin/ directory/目录下。要记住把它编译成可执行文件,然后使用你的Web浏览器浏览它。在短暂地等待下载完RSS文件之后,你就应该会看到像图A一样的页面。

列表A里的脚本的工作原理是什么样的?嗯,第一项任务是把RSS feed从远程的系统下载到本地系统上。这可以使用LWP::Simple工具包来完成,它会模拟HTTP的客户端,打开对远程网站的网络连接,取回RSS数据。一个XML::RSS对象会被创建,这个原始数据然后被传递给它处理。
RSS feed的各种元素被转化成Perl的结构,而foreach()循环被用来在项目数组里迭代。每个项目都含有代表项目名称、URL和描述的属性;这些属性被用来动态构建一个可读的新闻项目列表。每当Slashdot更新其RSS feed的时候,上述脚本所显示的项目列表会自动地改变,而不需要人工的干预。
列表A里的脚本还可以用于其他的RSS feed,并能够轻松改变传递给LWP的get()方法的URL,并通过脚本的变化来监视所显示的项目列表。
用户评论