XML::RSS:Tools might of use for you. It uses an XSLT style sheet to generate output from the data in the RSS.
use XML::RSS::Tools;
my $feed = 'http://rss.example.com/';
my $xslt = '/path/to/stylesheet';
my $rss = XML::RSS::Tools->new;
if ($rss->rss_uri($feed) &&
$rss->xsl_file($xslt) &&
$rss->transform)
{
print $rss->as_string
} else {
print $rss->as_string('error')
};
Another possibility is XML::Feed which would give you a "programmatic" approach to generating your output.
use XML::Feed;
my $feed = XML::Feed->parse(URI->new($feed))
or die XML::Feed->errstr;
for my $entry ($feed->entries) {
# extract info from entry and generate output
}
There seems to be quite a few others on CPAN, but of the few I looked at, these seemed the simplest to use.
Side comment: I would be dubious of automatically creating tickets from any RSS feed. Even with very good filtering, you can still end up with a lot of "noise tickets" to explain to your managers.
|