Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save JashanChittesh/fa1b738b30faa5ec3de4f37bf47b9710 to your computer and use it in GitHub Desktop.
Save JashanChittesh/fa1b738b30faa5ec3de4f37bf47b9710 to your computer and use it in GitHub Desktop.
This is an updated version of CapnAndy's instructions to get Steam reviews into a Slack channel by creating a review RSS feed on feed43.com.
This is based on instructions by @Capn_Andy (apparently now @SnugglePilot), who was
pointed there by @Chaklapak. I implemented this the first time April 17, 2016, with
some updates to make it work for Early Access (the original version gave me just the
"Early Access Review" as review text). This version here is an update from April 30, 2017
which was long overdue because my previous RegEx-statement mixed things up quite a bit,
probably due to Steam changing the format a while back, resulting in the same reviews
popping up in the Slack channel over and over, with authors, recommended / not recommended
and the actual reviews all mixed up.
Original instructions:
https://gist.github.com/CapnAndy/ce094bc54ee15c3801e704d4edf22a3e
(this is a fork, so I guess GitHubGist lets you easily browser there via its interface).
Also, while I was at it, I have added how to get those feeds into Discord, and also,
how to set up the same for release notes and videos (all from the Steam community page).
A few examples of the resulting RSS feeds:
http://feed43.com/holodance-steam-reviews.xml
http://feed43.com/holodance-steam-releases.xml (NOTE: Could simply use Steam RSS feed instead)
http://feed43.com/holodance-steam-releases-full.xml (NOTE: Could simply use Steam RSS feed instead)
http://feed43.com/holodance-steam-videos.xml
You can see those in action on our Holodance Discord Server:
https://discord.gg/mUBufqw
Step One: Get Link to Your Review Page
I'm using Most Recent, and All Languages; adapt to your needs:
http://steamcommunity.com/app/422860/reviews/?p=1&browsefilter=mostrecent&filterLanguage=all
Step Two: Setup Review Feed on Feed43.com
You may want to create an account on feed43.com, even though
you don't have to. Either way, you "Create Your Own Feed".
These instructions have the full details for Steam Reviews - but
you can also grab your Release Notes or Videos to stream them into
a Discord Server, for example. See end of this guide for those.
Step 1, URL: URL from above
http://steamcommunity.com/app/422860/reviews/?p=1&browsefilter=mostrecent&filterLanguage=all in my case
Step 2, Extraction Rules, this one works for Early Access:
Item (repeatable) Search Pattern:
{*}<div class="apphub_Card{*}data-modal-content-url="{%}"{*}<div class="apphub_CardContentMain"{*}<div class="title">{%}</div>{*}<div class="hours">{%}</div>{*}<div class="date_posted">Posted: {%}</div>{_}{*}</div><br>{%}</div>{*}<div class="apphub_CardContentAuthorName{*}/">{%}</a>
Leave "Global Search Pattern" empty (I tried, didn't work, works very well without global search pattern)
Step 3, Define Output Format.
What you should see in Clipped data is something like:
{%1} = http://steamcommunity.com/id/masterbard/recommended/422860/
{%2} = Recommended
{%3} = 1.0 hrs on record
{%4} = April 20
{%5} = A sorely underappreciated game. I've had more fun with just the OSU support than I've had with &quot;the other dance game&quot; since last spring. Well worth the money!
{%6} = masterbard
Double check if this matches the actual reviews. The issue
I've had was that with the old extraction rule, the name
and review didn't match (I got the name of the first review,
but the second review in the first item).
Also, in the old version the link went to the wrong review.
So, basically, whenever Steam changes how that site looks,
you may have to adapt the extraction rules accordingly,
and sometimes, simply changing the order is all you need to
do.
Don't be like me and wait a year until the feed has spammed
your channel to oblivion until fixing any issues you may
encounter.
The order of the items does not match the order in the
HTML-code because Steam, for some weird reason messes up
the sorting (it's not chronological), and Feed43.com fixes
that. Nice, isn't it?
Feed Title and description is up to you, I used
Steam Community :: Holodance :: Reviews
Most recent Holodance reviews on Steam, all languages.
Feed link has to be the one from above.
Item Title Template
{%6} {%2} ({%4})
=> 6: name of player
=> 2: Recommended or Not Recommended
=> 4: Date
Item Link Template
{%1}
Item Content Template
<em>{%5}</em><br><br>
- {%6} [{%4}, {%2} after {%3}]
That's the actual review, and then again the name, date
recommended or not recommended and how long the player had
played the game at that time.
Check if all is good using "Preview", verify all links
and names and recommended / not recommended are correct.
Step 4, Get Your RSS Feed
MAKE ABSOLUTELY SURE TO KEEP THE EDIT URL!
If you have an account with Feed43.com, that is obviously
not that important.
Change file name, if you wish, or make a note of the
Feed URL.
So I have: http://feed43.com/holodance-steam-reviews.xml
Step Three, Finally: Grab the Feed in Slack
You'll usually want your own channel, call it "reviews", maybe.
Also, you may want to post a link to these instructions in the
"Purpose" or a pinned item because when Steam messes things up,
it will be quite useful to be able to get back and fix things
using these instructions.
Then, simply type as chat message:
/feed subscribe [your feed URL]
If you ever need to unsubscribe, simply use /feed help to get instructions.
And/or, Step Four, if you want to have the Feed in Discord, you can use the Discord.RSS bot:
https://www.reddit.com/r/discordapp/comments/5n9l6w/discordrss_an_rss_bot/
~rssadd <yourFeedURL>
~rsstest, then type 1 to see what the bot gets
~rssmessage, then type 1 to enter a custom message, usually something like
**{title}**
{description}
{link}
and again ~rsstest to see if it works correctly
Finally, Step 5, when you want Release Notes (all News) and/or Videos:
Release Notes:
NOTE: It's more reliable to simply use Steam's RSS feed for this purpose:
http://steamcommunity.com/games/holodance/rss/
http://steamcommunity.com/app/422860/announcements/
{*}<div class="apphub_Card{*}data-modal-content-url="{%}"{*}<div class="apphub_CardContentNewsTitle">{%}</div>{*}<div class="apphub_CardContentNewsDate">{%}</div>{*}<div class="apphub_CardTextContent">{%}</div>
Result Example:
{%1} = http://steamcommunity.com/gid/103582791441659478/announcements/detail/507060676897010929
{%2} = Holodance 0.8.0b8: Bugfixes and further performance optimization, UI polishing
{%3} = Apr 11
{%4} = We're almost done with the [...] <--- this is very long, you may not want to use it!
Title: {%2} ({%3})
Link: {%1}
Content (if you always want the full release notes):
{%4}
<br>
Alternative Content: {%3}: <a href="{%1}">{%2}</a>
Videos:
http://steamcommunity.com/app/422860/videos/?p=1&browsefilter=mostrecent
{*}<div class="apphub_Card{*}data-modal-content-url="{%}"{*}<div class="apphub_CardContentTitle ellipsis">{%}&nbsp;</div>{*}<div class="apphub_CardContentAuthorName{*}"><a href="{%}">{%}</a>
Result Example:
{%1} = http://steamcommunity.com/sharedfiles/filedetails/?id=883935574
{%2} = Holodance (VR Gameplay)
{%3} = http://steamcommunity.com/id/geradraz/
{%4} = G-Dub
Title: {%4} posted: {%2}
Link: {%1}
Content: <a href="{%1}">{%2}</a> posted by: <a href="{%3}">{%4}</a><br>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment