Как мне запустить браузер Firefox без моего скрипта на Ruby?

Мне нужно иметь возможность запускать свои скрипты на Ruby с моими сборками Hudson, но я не хочу, чтобы открывалось окно браузера. Я старался:

batman:ETW cmiller$ ./createAccount.rb -b

но это не сработало.

Как я могу запустить свои скрипты на Ruby, используя FireWatir без головы?

Работает на Mac OSX

4 ответа

Решение

Я бы посмотрел на использование Watir-Webdriver вместо простого Watir или Fire-watir. Тем более что единственный способ работать с более новыми версиями Firefox будет через Watir-Webdriver.

Есть более ранний вопрос SO, где ответ охватывает только такие вещи, поэтому я бы предложил сначала попробовать то, что там описано. Могу ли я использовать Watir для очистки данных с веб-сайта на сервере Linux без монитора?

Кроме того, поскольку теперь я знаю, что вы используете Mac OS, совет в этой теме от группы Google веб-драйвера может быть более применим к вам.

Я бы предложил использовать PhantomJS ( http://phantomjs.org/download.html). Добавьте двоичные файлы к вашему пути и запустите:

    MEDBEDbs-iMac:~ medbedb$ irb
    1.9.3p392 :001 > require 'watir-webdriver'
     => true 
    1.9.3p392 :002 > b = Watir::Browser.new :phantomjs
     => #<Watir::Browser:0x..fe670a70a449fe1ca url="about:blank" title=""> 
    1.9.3p392 :003 > b.goto "www.google.com"
     => "http://www.google.md/" 
    1.9.3p392 :004 > b.url 
     => "http://www.google.md/" 
    1.9.3p392 :005 > b.title
     => "Google"
    1.9.3p392 :007 > b.text
 => "+Вы\nПоиск\nКартинки\nКарты\nPlay\nПочта\nДиск\nКалендарь\nЕщё\nВойти\n×\nОткрывай любимые сайты быстрее\nЗагрузить Google Chrome\n\nМолдoва\n\n \nРасширенный поиск\nЯзыковые инструменты\n\nGoogle.md предлагается на: Moldovenească\n\nРекламные программыВсё о GoogleGoogle.com\n© 2013 - Правила и принципы" 

Посмотрите на http://watirmelon.com/tag/headless/. Я следовал за http://watirwebdriver.com/headless/ на Linux, который работает для меня. В приведенной выше ссылке учебник предназначен для Mac

Вот выдержка из ссылок, как пользоваться безголовым браузером:

  require 'watir-webdriver' 
    require 'headless'

Теперь начните без головы и браузера

   headless = Headless.new
    headless.start 
    b = Watir::Browser.start 'www.google.com' puts b.title
    b.close headless.destroy

Ваш браузер должен работать без головы.

Браузер открывает окно как часть его нормальной работы и поведения.

Вы можете изучить использование Mechanize, которое предоставляет возможность навигации по сайту. Это не браузер, но использует Nokogiri, чтобы вы могли получать информацию DOM и манипулировать формами, отправлять их и получать любые изменения страницы. Mechanize не поддерживает синтаксический анализ / выполнение Javascript, что возвращает вас в сферу WATIR.

Другие вопросы по тегам