How to get all possible image URLs from RSS feed item?
.net, c#, image, syndication-feed, url
Solution
I found the solution.
foreach (SyndicationElementExtension extension in f.ElementExtensions)
{
XElement element = extension.GetObject<XElement>();
if (element.HasAttributes)
{
foreach (var attribute in element.Attributes())
{
string value = attribute.Value.ToLower();
if (value.StartsWith("http://") && (value.EndsWith(".jpg") || value.EndsWith(".png") || value.EndsWith(".gif") ))
{
rssItem.ImageLinks.Add(value); // Add here the image link to some array
}
}
}
}
Problem
I try to use this example to get images urls from http://www.nydailynews.com/cmlink/NYDN.Article.rss but no success Could u help me to find all correct ways to gets all possible image URLs from RSS feed item by `SyndicationItem` class? There is draft solution here but I guess should be more generic solution. Thank you! ``` List<RssFeedItem> rssItems = new List<RssFeedItem>(); Stream stream = e.Result; XmlReader response = XmlReader.Create(stream); SyndicationFeed feeds = SyndicationFeed.Load(response); foreach (SyndicationItem f in feeds.Items) { RssFeedItem rssItem = new RssFeedItem(); rssItem.Description = f.Summary.Text; foreach (SyndicationLink enclosure in f.Links.Where<SyndicationLink>(x => x.RelationshipType == "enclosure")) { Uri url = enclosure.Uri; long length = enclosure.Length; string mediaType = enclosure.MediaType; rssItem.ImageLinks.Add(url.AbsolutePath); } } ```