Pull RSS Feeds From Facebook Page

前端 未结 3 2079
挽巷
挽巷 2021-02-06 11:53

I need help to pull RSS feeds from a facebook page I\'m using the following code but it keeps giving me an error :

string url = 
    \"https://www.facebook.com/f         


        
相关标签:
3条回答
  • 2021-02-06 12:12

    In my case also Facebook feed was difficult to consume and then I try with feedburner to burn the feed for my facebook page. Feedburner generated the feed for me in Atom1.0 format. And then I successfully :) consumed this with system.syndication class my code was:

    string  Main()
       {
           var url = "http://feeds.feedburner.com/Per.........all";
    
    
           Atom10FeedFormatter formatter = new Atom10FeedFormatter();
           using (XmlReader reader = XmlReader.Create(url))
           {
               formatter.ReadFrom(reader);
           }
           var s = "";
           foreach (SyndicationItem item in formatter.Feed.Items)
           {
               s+=String.Format("[{0}][{1}] {2}", item.PublishDate, item.Title.Text, ((TextSyndicationContent)item.Content).Text);
           }
    
           return s;
       }
    
    0 讨论(0)
  • 2021-02-06 12:31

    It works when using Gregorys code above if you change the feed format to atom10 instead of rss20. Change the url:

    string url = 
    "https://www.facebook.com/feeds/page.php?id=40796308305&format=atom10";
    
    0 讨论(0)
  • 2021-02-06 12:32

    Facebook will return HTML in this instance because it doesn't like the User Agent supplied by XmlReader. Since you can't customize it, you will need a different solution to grab the feed. This should solve your problem:

    var req = (HttpWebRequest)WebRequest.Create(url);
    req.Method = "GET";
    req.UserAgent = "Fiddler";
    
    var rep = req.GetResponse();
    var reader = XmlReader.Create(rep.GetResponseStream());
    
    SyndicationFeed feed = SyndicationFeed.Load(reader);
    

    This is strictly a behavior of Facebook, but the proposed change should work equally well for other sites that are okay with your current implementation.

    0 讨论(0)
提交回复
热议问题