How to read image url from rss using syndicationFeed?

How to get image url? suppose the tag

<media:thumbnail url="http://img.youtube.com/vi/y6_-cLWwEU0/default.jpg" width="120" height="90" /> 

Using syndicationItem in syndicationFeed?

I have something like this

  Stream stream = e.Result; XmlReader response = XmlReader.Create(stream); SyndicationFeed feeds = SyndicationFeed.Load(response); foreach (SyndicationItem ff in feeds.Items) { RssItem rssItem = new RssItem(ff.Title.Text, ff.Summary.Text, ff.PublishDate.ToString(), ff.Links[0].Uri.AbsoluteUri, **ff.image?????** ); rssItems.Add(rssItem); } 

any help?

+4
source share
3 answers

Stream stream = e.Result;

  XmlReader response = XmlReader.Create(stream); SyndicationFeed feeds = SyndicationFeed.Load(response); foreach (SyndicationItem item in feeds.Items) { if (item.ElementExtensions.Where(p => p.OuterName == "thumbnail").Count() != 0) { string imgPath = item.ElementExtensions.Where(p => p.OuterName == "thumbnail").First().GetObject<XElement>().Attribute("url").Value; MessageBox.Show(imgPath); //use it to show the img in DIV or whereever you wish. } } 
+1
source

I also needed a solution, and I used it like this:

 foreach (SyndicationItem item in feed.Items) { int s,f; s = item.Summary.Text.IndexOf("<"); f = item.Summary.Text.IndexOf("/>"); if (f != -1) div1.InnerHtml += "</br>photo:" + item.Summary.Text.Substring(s, f + 1 - s); } 

I extract img from the resume;

0
source

For example, Google RSS stores all images for the entire duration.

So you can extract it with this code:

 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; const string rx = @"(?<=img\s+src\=[\x27\x22])(?<Url>[^\x27\x22]*)(?=[\x27\x22])"; foreach (Match m in Regex.Matches(f.Summary.Text, rx, RegexOptions.IgnoreCase | RegexOptions.Multiline)) { string src = m.Groups[1].Value; if (src.StartsWith("//")) // Google RSS has it { src = src.Replace("//", "http://"); } rssItem.ImageLinks.Add(src); } 
0
source

All Articles