[XML::Feed::MB plus de problème si pas d'id pour un message Olivier Schwander **20071227234008 Certains flux n'ont pas d'id pour leurs messages (??? bug de XML::Feed) par exemple http://www.gandi.net/news/fr/rss.xml Dans ce cas on prend le lien, si il n'y a toujours pas de lien (gandi encore une fois), on fait le md5 du titre du blog et du titre du message. ] { hunk ./lib/XML/Feed/MB.pm 7 +use Digest::MD5 qw(md5_base64); hunk ./lib/XML/Feed/MB.pm 73 - next if (defined($ids{$entry->id}) && $ids{$entry->id} > 0); +# identification + my $id = $entry->id; + $id = $entry->link + unless defined($id); + $id = md5_base64($feed->title,$entry->title) + unless defined($id); + + next if ($ids{$id}); # <> 0 hunk ./lib/XML/Feed/MB.pm 84 +# description + my $title = $entry->title; + $title = "" unless defined($title); + my $link = $entry->link; + $link = "" unless defined($link); + hunk ./lib/XML/Feed/MB.pm 107 - "link . "\">" . - $entry->link . "" . "
\n" . + "" . + $link . "" . "
\n" . hunk ./lib/XML/Feed/MB.pm 118 - $entry->link . "\n" . + $link . "\n" . hunk ./lib/XML/Feed/MB.pm 123 -# title - my $title = $entry->title; - hunk ./lib/XML/Feed/MB.pm 130 - decode_entities($entry->title)), + decode_entities($title)), hunk ./lib/XML/Feed/MB.pm 133 - 'X-Id' => $entry->id, + 'X-Id' => $id, }