【发布时间】:2016-06-16 06:47:30
【问题描述】:
我有一个使用 Selenium Webdriver 和 Nokogiri 的 Ruby 应用程序。我想选择一个类,然后对于该类对应的每个div,我想根据div的内容执行一个动作。
例如,我正在解析以下页面:
https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=puppies
这是一个搜索结果页面,我正在寻找描述中包含“收养”一词的第一个结果。因此,机器人应该寻找带有className: "result" 的 div,检查其.description div 是否包含“adoption”一词,如果包含,请单击.link div。换句话说,如果.description 不包含该词,那么机器人将继续前进到下一个.result。
这是我目前所拥有的,它只是点击了第一个结果:
require "selenium-webdriver"
require "nokogiri"
driver = Selenium::WebDriver.for :chrome
driver.navigate.to "https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=puppies"
driver.find_element(:class, "link").click
【问题讨论】:
标签: ruby selenium selenium-webdriver webdriver bots