Submit Protip to Coderwall.com using Selenium
each day i hae to sumit to several social networks including Facebook, twitter, google+, linkedin, coderwall, and several other websites.
this is alot of time spent on the same steps over and over, some websites doesn't have API to submit like Coderwall for example, so i have to simulate my behaviour using selenium.
this script uses github to login to coderwall.com and submit a new protip, script has two parts, first goes to the coderwall github authentication link, login using user data, it forward back to coderwall, second it goes to the new protip link and submit the data.
it uses firefox web driver, so firefoz should be installed on your system.
Gist : https://gist.github.com/9853977
#!/usr/bin/env ruby
# Author : Emad Elsaid (https://github.com/blazeeboy)
require "selenium-webdriver" # gem install selenium-webdriver
require "highline/import" # gem install highline
def coderwall github_email, github_password, title, content, tags
driver = Selenium::WebDriver.for :firefox
driver.navigate.to "https://coderwall.com/auth/github"
driver.find_element(:css, '#login_field').send_keys github_email
passwordf = driver.find_element(:css, '#password')
passwordf.send_keys github_password
passwordf.submit
driver.navigate.to "https://coderwall.com/p/new"
driver.find_element(:css, '#protip_title').send_keys title
driver.find_element(:css, '#protip_body').send_keys content
driver.find_element(:css, '#protip_tags').send_keys tags
driver.find_element(:css, '.new_protip').submit
driver.quit
end
email = ask 'What is your github email address ? '
password = ask('And github password? '){ |q| q.echo = '*' }
coderwall email, password, 'Title here', 'Content here', 'ruby, test'
Written by Emad Elsaid
Related protips
Have a fresh tip? Share with Coderwall community!
Post
Post a tip
Best
#Ruby
Authors
Related Tags
#ruby
Sponsored by #native_company# — Learn More
#native_title#
#native_desc#