我是一個完整的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