Simple Selenium Ruby script

Here’s a simple ruby script that will be ran on background and silently — to log in to a proxy server.

It uses Selenium Ruby — pretty easy to use for such a simple use case.


#!/usr/bin/env ruby

require 'rubygems'
require 'headless'
require 'selenium-webdriver'
require 'timeout'

# Create a headless display
puts "Starting headless ..."
headless = Headless.new
headless.start

# Create a firefox Selenium driver
puts "Creating a firefox selenium driver ... "
driver = Selenium::WebDriver.for :firefox

begin

status = Timeout::timeout(5) {

           #Navigate to Proxy
           puts "Navigating to proxy ..."
           driver.navigate.to 'https://proxyHost:proxyPort/auth.html'

           #Find an element on the page
           puts "Find the userName element ..."
           element = driver.find_element(:name, 'userName');

           puts "Fill userName field ..."
           element.send_keys "login"

           puts "Find the password element ..."
           element = driver.find_element(:name, 'passWord');

           puts "Fill password field ..."
           element.send_keys "password"

           #Submit
           puts "Submitting the form ..."
           element.submit

           }

           rescue Timeout::Error

           #Clean up the display
           puts "Cleaning up the display ..."
           headless.destroy

           #Quit
           puts "Stopping headless ..."
           headless.stop

end

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s