4

クロム (watir で使用) をバックグラウンドに残すにはどうすればよいですか? すべて.gotoのブラウザがフォーカスを取得し、アクティブなウィンドウになります。

ff または ie で同じスクリプトを使用しても、このようには動作しません。

よろしくお願いします。

例:

    require "watir"
    # browser = Watir::Browser.new :firefox   # stays in background
    browser = Watir::Browser.new :chrome      # getting focus on .goto
    for i in 0..5
      browser.goto "http://google.com?q=#{i}"
      sleep 5
    end
    browser.close   

環境:

  • ウィンドウズ7 64ビット
  • ルビー 1.9.3p125 (2012-02-16) [i386-mingw32]
  • watir (4.0.2 x86-mingw32)
  • WATIRクラシック(3.4.0)
  • watir-webdriver (0.6.2)
  • chromedriver バージョン=26.0.1383.0

編集:以下のコメントに書かれているように、ウィンドウを最小化したくありません。

4

1 に答える 1

0

win32ole を使用することで、目的を達成できると思います。アイデアは、ALT + SPACEBAR + N キーの押下をシミュレートして、ウィンドウが開くとすぐに最小化されるようにすることです!

それは私が考えることができる最も簡単です。

ここにあります:

    require 'win32ole'
skey = WIN32OLE.new('Wscript.Shell')

skey.sendKeys("(%) + (' ') + (n)") #--> minimize window 
  • 上記は winXP と Firefox で正常にテストされていますが、キーの組み合わせが Windows ベースであるため、構成で機能しない理由がわかりません。

幸運を祈ります

于 2013-03-12T15:51:14.017 に答える