微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用 Ferrum::Browser 调用 onclick 事件

如何解决如何使用 Ferrum::Browser 调用 onclick 事件

我有一个使用 Selenium::WebDriver 抓取网页的代码

driver = Selenium::WebDriver.for(:chrome)
driver.navigate.to(search_url)
driver.find_element(:name,'searchText').send_keys('text')
driver.find_element(:name,'searchButton').click

我尝试用 ferrum::brower 替换代码,但没有用。

browser = ferrum::browser.new
browser.goto(search_url)
browser.at_css('input[name=searchText]').focus.type('text')
browser.at_css('input[name=searchButton]').click

点击 searchButton 时,页面不会移动到结果页面

这是搜索的输入标签

<input class="activeButton" onclick="submitPage(document.forms['form1'],document.forms['form1'].ListShow);" value="Search" type="button" name="searchButton">

如何使用 ferrum 调用 onclick 事件?

解决方法

type 方法类似,我需要先聚焦 Ferrum::Node 实例,然后再点击它。

- browser.at_css('input[name=searchButton]').click
+ browser.at_css('input[name=searchButton]').focus.click

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。