gpt4 book ai didi

ruby - 如何使用 watir-webdriver 在我正在处理的页面上自动执行 google 链接?

转载 作者:太空宇宙 更新时间:2023-11-03 17:58:58 25 4
gpt4 key购买 nike

我正在处理的页面链接是 http://www.whatcar.com/car-news/subaru-xv-review/260397

我正在尝试自动“点击 google 链接”,但运气不好,一直收到错误。

HTML 链接:

<a tabindex="0" role="button" title="" class="s5 JF Uu" id="button" href="javascript:void(0);" aria-pressed="false" aria-label="Click here to publicly +1 this."></a>

我的代码:

@browser.link(:class, "s5 JF Uu").click

错误信息:

unable to locate element, using {:class=>"s5 JF Uu", :tag_name=>"a"} (Watir::Exception::UnknownObjectException)
./step_definitions/11.rb:12:in `/^On the page I click 'Twitter' , Facebook and Google button$/'
11.feature:8:in `When On the page I click 'Twitter' , Facebook and Google+ button'

最佳答案

链接在框架内。为了让它更有趣,每次刷新页面时,框架 id 都是不同的。

browser.frames.collect {|frame| frame.id}
=> ["I1_1323429988509", "f3593c4f374d896", "f4a5e09c20624c", "stSegmentFrame", "stLframe"]

browser.refresh
=> []

browser.frames.collect {|frame| frame.id}
=> ["I1_1323430025052", "fccfdf9410ef34", "f11036dad706668", "stSegmentFrame", "stLframe"]

I1_1323429988509I1_1323430025052 是框架。由于 I1_ 部分始终相同,并且没有其他框架具有该部分,因此您可以像这样访问该框架:

browser.frame(:id => /I1_/)

由于框架内只有一个链接:

browser.frame(:id => /I1_/).as.size
=> 1

你可以这样点击链接:

browser.frame(:id => /I1_/).a.click

或者如果你更喜欢更明确

browser.frame(:id => /I1_/).a(:id => "button").click

这将打开一个新的浏览器窗口,新的挑战就在这里! :)

关于ruby - 如何使用 watir-webdriver 在我正在处理的页面上自动执行 google 链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8434356/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com