超级菜鸟所以我提前为任何愚蠢的问题道歉...
我正在尝试创建一个脚本,通过以下方式查找和图像:id,保存它的图像URL(也称为img src),然后单击图像。
到目前为止我已经完成了:
require 'rubygems'
require 'selenium-webdriver'
driver = Selenium::WebDriver.for:firefox
wait = Selenium::WebDriver::Wait.new(:timeout => 15)
driver.get 'http://example.com'
image = wait.until {
element = driver.find_element(:id,'id_image')
element if element.displayed?
}
#this is the part where i would like to save the IMAGE URL
image click.click
我刚刚接受了代码的相关部分,我可以向您保证,到目前为止,这一切都完美无缺,但我无法保存图片网址。
谢谢!
答案 0 :(得分:1)
您需要元素的href属性。在selenium中,您可以使用element.attribute('attribute-name')
在你的情况下,你会做类似的事情:
href = image.attribute('href')
答案 1 :(得分:-1)
我建议您使用Capybara,因为它有几个有用的选择器。
通过这种方式,您可以使用以下内容获取URL属性:
href = driver.find_element(:id, 'id_image')[href]
相关问题: Capybara: is it possible to get an attribute value from a css string?