我有一个使用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
您也可以直接在表单上使用#submit方法。
browser.at_css('form').submit