Как мне запустить браузер 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.