Smart Facebook RSS feed parsing

All Facebook pages have an RSS feed, but it is not listed in the code of the page.

They are in the standardized format:
https://www.facebook.com/feeds/page.php?format=rss20&id=FACEBOOK_ID

Example:
https://www.facebook.com/feeds/page.php?format=rss20&id=179305842224697

To obtain the user ID we can query Facebook for a JSON object that includes the user ID:
http://graph.facebook.com/USERNAME

Example:
http://graph.facebook.com/CryptOfTheNecroDancer

Solution for NewsBlur Users:

  1. User adds as a new source: http://www.facebook.com/CryptOfTheNecroDancer
  2. NewsBlur does the JSON request for the Facebook ID in the background and generates the proper RSS URL
  3. NewsBlur adds https://www.facebook.com/feeds/page.php?format=rss20&id=179305842224697 to the user’s feed.
3 Likes

Related to that, I’ve seen Youtube also exhibit strange behavior that NewsBlur could work around.

Every Youtube channel has an RSS feed available at: https://gdata.youtube.com/feeds/api/users/USER_ID/uploads

Example: 
https://gdata.youtube.com/feeds/api/users/UCwF3VyalTHzL0L-GDlwtbRw/uploads

However, if you look at the code on some Youtube channels: https://www.youtube.com/channel/UCwF3VyalTHzL0L-GDlwtbRw there is no RSS reference to be found.

It actually might be faster and more reliable for NewsBlur to just generate the RSS feed URL based on the standard URL format is using rather than parsing the page.

The same goes for Soundcloud. RSS is something the channel owner has to manually add to his page, but the RSS feed is still available for pages that haven’t added it.

Every soundcloud has the RSS feed:
[http://feeds.soundcloud.com/users/soundcloud:users:[user ID]/sounds.rss](http://feeds.soundcloud.com/users/soundcloud:users:[user ID]/sounds.rss “Link httpfeedssoundcloudcomuserssoundcloudusersuser IDsoundsrss”)

Example:
http://feeds.soundcloud.com/users/soundcloud:users:35042463/sounds.rss

This user ID, can be found when inspecting the page elements and searching for 
“id”:                (With quotes)

Example:
“id”:35042463

There might be an easier way to attain this ID, but I don’t know.

1 Like

What I should do is have extra fields for “special” rss feeds below the main add rss text box. Facebook, Twitter, google alerts, etc.

3 Likes

As far as I understand, this method no longer works?