我想有一個的Watir非常簡單的腳本,並由於某種原因不能:的Watir - 處理一個新的窗口
這應該登錄與Twitter網站。
browser = Watir::Browser.start 'http://www.12mass.com/'
browser.link(:class, 'priceLogin').click
sleep 2
browser.element(:class, 'loginTwitter').click
browser.windows.last.use do
browser.text_field(:id, 'username_or_email').click
browser.text_field(:id, 'username_or_email').set 'name'
browser.text_field(:id, 'password').set 'pass'
browser.button(:id, 'allow').click
end
我得到的地方,一個新窗口中打開了點,但我不能達到它,並填寫憑證......
時不時的話,我得到一個錯誤(在我的日誌): `在rbuf_fill中救援'。 我已經添加:
require 'net/http'
http = Net::HTTP.new(@host, @port)
http.read_timeout = 500
我的代碼,但我仍然得到錯誤,無法登錄填寫新窗口的憑據。
而且,我嘗試這樣做:
browser.windows.last.use
browser.element(:css, '[for="username_or_email"]').click
有同樣的錯誤..
「我無法達到它」 - 不確定你的意思。達到什麼? – jschorr
這是你的代碼中的錯字? - _browser.window.last_不起作用。它需要_browser.windows.last_ ...此外,你得到的錯誤是什麼? –
謝謝安倍,這是一個問題,但仍然無法正常工作。我改變了這一點,模擬了標籤上的點擊 - 不起作用。似乎我無法獲取任何數據或填充該彈出窗口中的任何字段。我嘗試了幾個browser.windows。<>技術..「最後」,「索引」和標題。非工作。 – Devaffair