如何使用 Watir 和 Ruby 定位 twitter 登录按钮? | 珊瑚贝

How to locate twitter login button using Watir and Ruby?


我正在尝试使用名为 Watir 的 gem 来定位 twitter 登录按钮。

这是按钮标记:

1
<button type=“submit” class=“submit EdgeButton EdgeButton–primary EdgeButtom–medium”>Log in</button>

这是我的代码:

1
2
# Click Login Button
browser.button(:class => [‘submit’ ‘EdgeButton’ ‘EdgeButton–primary’ ‘EdgeButtom–medium’],:tag_name=>“button”).click

我收到此错误:

Watir::Exception::UnknownObjectException: timed out after 30 seconds, > waiting for Watir::Button: located: false; > {:class=>[“submitEdgeButtonEdgeButton–primaryEdgeButtom–medium”], > :tag_name=>”button”}> to be located; Maybe look in an iframe?> > C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/watir-6.10.3/lib/watir/elements/element.rb:664:in > rescue in element_call’ > C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/watir-6.10.3/lib/watir/elements/element.rb:680:in >element_call’ > C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/watir-6.10.3/lib/watir/elements/element.rb:125:in > click’ C:/Users/bnbih/Desktop/ig_bot/auto_follow_tw.rb:34:instart’ > C:/Users/bnbih/Desktop/ig_bot/auto_follow_tw.rb:77:in (required)>’ > C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/ocra-1.3.10/bin/ocra:1211:in >load’ > C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/ocra-1.3.10/bin/ocra:1211:in > ‘ C:/Ruby24-x64/bin/ocra:23:inload’ > C:/Ruby24-x64/bin/ocra:23:in `’


你有一个数组中的类,但没有逗号分隔字符串。除非您有逗号,否则代码会将其视为具有一个长字符串的数组。

1
b.button(class: [‘submit’, ‘EdgeButton’, ‘EdgeButton–primary’, ‘EdgeButtom–medium’]).click

可以用文字定位,写如下代码,

1
browser.button(text: ‘Log in’).click

如果你还想使用类定位器,那么

1
b.button(class: ‘submit EdgeButton EdgeButton–primary EdgeButtom–medium’).click
  • 如果您尝试使用多个类来定位元素,则应该使用 Array。
  • @titusfortner 好的。


来源:https://www.codenong.com/49613759/

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?