我是一个完整的noob,但是前一段时间我在Perl中编写了一个小脚本来解析RSS提要。它开始是这样的:为什么Perl的XML :: RSS :: Parser会抱怨“End tag mismatch”?
use strict;
use XML::RSS::Parser;
use Data::Dumper;
my $url = "http://www.livenation.co.uk/Venue/159/Southampton-Guildhall-tickets/RSS";
my $parser = XML::RSS::Parser->new();
my $feed = $parser->parse_uri($url);
print Dumper($feed);
print $parser->errstr();
它用来工作(不记得我最后一次检查,但在几个星期前,它似乎工作),但今天它不再一样。 RSS源是活着的,并通过feedvalidator.org。该errstr()
返回此:
End tag mismatch (title != description) [Ln: 67, Col: 95]
我真的不知道这是怎么发生或这意味着什么。 RSS的来源如下:
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
我不知道以前是不是这样。我尝试了其他一些原子提要,并且解析器似乎在所有这些原子提供商中都崩溃了。问题是,系统管理员在截止日期之后才会回来,所以我必须使用可用的东西。
更新:
有趣。它在我的w7 64 * active perl)和ubuntu(32,9.10)安装上都会中断。虽然我的朋友的ubuntu工作得很好(相同,9.10)。我试图重新安装模块,但这似乎没有改变任何东西。
我们都看到相同的数据吗?对我来说,饲料数据线67:
v5.10.0 4 2.11 0.96以及这里,但我收到一条错误消息。它当然看起来有效。 – Anonymous 2010-01-09 15:12:48