RSocial
RSocial is a Ruby gem for crawling social media stats on various web entities. It's been setup to use Selenium WebDriver to make direct calls to your computers web browser, whereby each social media public web application is loaded and interacted with in order to poll the various stats.
Requirements
Installation
Add this line to your application's Gemfile:
gem 'rsocial'
And then execute:
$ bundler
Or install it yourself:
$ gem install rsocial
Usage
require 'rsocial'
client = RSocial::Instagram.client(:requesting_handle => "my_handle")
client.user("ryanbingham_official")
=> {:post_count=>1502, :follower_count=>471000, :following_count=>171, :handle=>"ryanbingham_official"}
client.tag("newmusic")
=> {:post_count=>6676425, :images=>[{:alt=>"caption",:src=>"src"}]}
require 'rsocial'
client = RSocial::Facebook.client(:requesting_handle => "my_handle")
client.page("RyanBingham")
=> {:follower_count=>153418, :handle=>"RyanBingham"}
require 'rsocial'
client = RSocial::Twitter.client(:requesting_handle => "my_handle")
client.user("RyanBingham")
=> {:tweet_count=>5755, :following_count=>636, :follower_count=>404000, :like_count=>151000, :handle=>"RyanBingham"}
YouTube
require 'rsocial'
client = RSocial::Youtube.client(:requesting_handle => "my_handle")
client.channel("UCtZ6qwLISrbRkYG2oBYLz3g")
=> {:subscriber_count=>11378, :channel_id=>"UCtZ6qwLISrbRkYG2oBYLz3g"}
Shazam
require 'rsocial'
client = RSocial::Shazam.client(:requesting_handle => "my_handle")
client.user("40229308")
=> {:follower_count=>254734, :id=>"40229308"}
Soundcloud
require 'rsocial'
client = RSocial::Soundcloud.client(:requesting_handle => "my_handle")
client.user("ryan-bingham")
=> {:follower_count=>1988, :track_count=>51, :handle=>"ryan-bingham"}
Building & Testing
rspec
gem build rsocial.gemspec
gem install ./rsocial-X.X.X.gem
irb
require 'rsocial'
Contributing
- Fork the project.
- Start a feature/bugfix branch.
- Commit and push until you are happy with your contribution.
- Submit a pull request