This gem allows you to grab posts and comments from Reddit without any auth. It concurrently grabs multiple subbreddits at a time to utilize your machine as much as possible and increase throughput.
No setup and a clean interface makes this gem ideal when you just want to process public reddit data.
The Redd gem seems to be abandoned so I created this gem to meet my needs.
And then execute:
$ bundle install
Or install it yourself as:
$ gem install reddit_get
You want to grab many subreddits
results = RedditGet::Subreddit.collect_all %w[gaming videos movies funny] results # will hold RedditGet::Data which acts like a hash results.gaming.each do |post| puts post['title'] end
You want to grab one subreddit
result = RedditGet::Subreddit.collect('gaming') result.gaming.each do |post| puts post.title # all gaming posts titles end result['gaming'] # works too!
You want to grab comments as well
Note: This grabs X subreddits M posts and N comments per post. So it is making X*M*N HTTP requests.
results = RedditGet::Subreddit.collect_all %w[gaming videos movies funny], with_comments: true results.gaming.each do |post| puts post.title post.comments.each do |comment| puts comment.body rescue nil end end # also works with single subreddit RedditGet::Subreddit.collect 'gaming', with_comments: true
Bug reports and pull requests are welcome on GitHub at https://github.com/AlessandroMinali/reddit_get.
The gem is available as open source under the terms of the MIT License.