我试图写一个脚本,将自动单击按钮时,进入一个网站。
该网站的HTML如下:
<span id="zolaDisclaimerButton" class="dijitReset dijitStretch dijitButtonContents" waistate="labelledby-zolaDisclaimerButton_label" wairole="button" dojoattachpoint="titleNode,focusNode" role="button" aria-labelledby="zolaDisclaimerButton_label" tabindex="0" title="I acknowledge this disclaimer... Let ZoLa begin!" style="-moz-user-select: none;">我试过以下几种方法,但它们不起作用:
browser.span(:id, "zolaDisclaimerButton").click
browser.button(:id, "zolaDisclaimerButton").click如何单击这些类型的按钮?所讨论的网址是:http://gis.nyc.gov/doitt/nycitymap/template?applicationName=ZOLA
编辑:这是我使用的代码:
require "watir"
browser = Watir::Browser.new
browser.goto "http://gis.nyc.gov/doitt/nycitymap/template?applicationName=ZOLA"
browser.span(:id, "zolaDisclaimerButton").click
puts "fin"它导航到页面,不点击任何东西,然后打印'fin‘(让我知道它已经完成了)。不抛出任何例外。
发布于 2013-07-30 16:00:57
如果页面没有及时加载,您可以添加等待-请参阅http://watirwebdriver.com/waiting/。这些等待方法将等待,直到满足条件或超过时间限制。它比使用sleep更好,因为它只等待需要的时间(而不是等待2秒,等待在1秒内加载的东西)。
在本例中,在单击span之前,在span上使用when_present方法:
require "watir"
browser = Watir::Browser.new
browser.goto "http://gis.nyc.gov/doitt/nycitymap/template?applicationName=ZOLA"
browser.span(:id, "zolaDisclaimerButton").when_present.click
puts "fin"https://stackoverflow.com/questions/17933530
复制相似问题