【问题标题】:How to call a onclick event using Ferrum::Browser如何使用 Ferrum::Browser 调用 onclick 事件
【发布时间】:2021-08-09 08:31:18
【问题描述】:

我有一个代码使用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 事件?

【问题讨论】:

  • 添加 selenium capybara watir 标签以获得帮助

标签: ruby selenium web-scraping


【解决方案1】:

类似于type 方法我需要在点击之前聚焦Ferrum::Node 实例。

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

【讨论】:

    猜你喜欢
    • 2014-02-24
    • 2013-02-19
    • 1970-01-01
    • 2020-08-09
    • 2015-06-05
    • 1970-01-01
    • 2022-12-12
    • 1970-01-01
    • 2011-06-11
    相关资源
    最近更新 更多