require 'rubygems' require 'mechanize' class MechanizeFacebook def initialize(auth, verbose = false) @auth = auth @verbose = verbose @agent = WWW::Mechanize.new @agent.user_agent_alias = 'Mac FireFox' @agent.redirect_ok = true end def login @page = @agent.get('http://www.facebook.com/') pp @page if @verbose login_form = @page.forms.first login_form.email = @auth['email'] login_form.pass = @auth['pass'] pp login_form if @verbose @page = @agent.submit(login_form) pp @page if @verbose end def warbook @page = @agent.click @page.links.text('WarBook') pp @page if @verbose @page = @agent.click @page.iframes pp @page if @verbose @page = @agent.get 'http://optimus.freewebz.com/kingdom' pp @page if @verbose @page = @agent.click @page.links.text('Your Hero') pp @page if @verbose form = @page.form nil form.fields.name('type').options[0].select @page = @agent.submit(form) pp @page if @verbose pp @page.search("//div[@id='messages']").inner_html pp @page.search("//p[@id='flash_error']").inner_html end end auth = {'email' => '', 'pass' => ''} mf = MechanizeFacebook.new(auth, false) mf.login mf.warbook