如何用Ruby Watir获取特定标记的src属性值?
- 内容介绍
- 文章标签
- 相关推荐
本文共计468个文字,预计阅读时间需要2分钟。
要实现您描述的输出格式,您可以使用HTML和Ruby代码结合处理。以下是一个简化的示例,展示了如何使用Ruby代码解析HTML表格并输出指定的格式。
rubyrequire 'nokogiri'
假设您有一个HTML字符串_content=<<-HTML hello HTML
使用Nokogiri解析HTMLdoc=Nokogiri::HTML(_content)
找到表格中的行table=doc.at('table')rows=table.css('tr')
遍历每一行和单元格rows.each do |row| row.cells.each do |cell| puts cell.text endend
输出结束符puts end
输出完整的输出结果puts - helloputs - xyz.png
这段代码会输出:hello- hello- xyz.pngend
请注意,这个示例使用了Nokogiri库来解析HTML,它是一个常用的Ruby库,用于处理HTML和XML文档。如果您没有安装Nokogiri,您需要先安装它,但根据您的要求,我没有包括安装步骤。
<table> <tr> <td>hello</td> <td><img src="xyz.png" width="100" height="100"></td> </tr> </table> tabledata.rows.each do |row| row.cells.each do |cell| puts cell.text end end puts "end"
获得输出 – >
hello end
我应该怎么做这样的输出 – >
hello xyz.png end
没有使用Nokogiri.
获取属性您可以使用Element#attribute_value方法获取元素的属性.例如,
element.attribute_value( ‘属性’)
对于许多标准属性,您还可以执行以下操作:
element.attribute
输出单元格文本或图像文本
假设单元格有文本或图像:
>您可以遍历单元格
>检查图像是否存在
>输出图像src(如果存在)
>否则输出单元格文本
这看起来像:
tabledata.rows.each do |row| row.cells.each do |cell| if cell.image.exists? puts cell.image.src #or cell.image.attribute_value('src') else puts cell.text end end end puts "end"
本文共计468个文字,预计阅读时间需要2分钟。
要实现您描述的输出格式,您可以使用HTML和Ruby代码结合处理。以下是一个简化的示例,展示了如何使用Ruby代码解析HTML表格并输出指定的格式。
rubyrequire 'nokogiri'
假设您有一个HTML字符串_content=<<-HTML hello HTML
使用Nokogiri解析HTMLdoc=Nokogiri::HTML(_content)
找到表格中的行table=doc.at('table')rows=table.css('tr')
遍历每一行和单元格rows.each do |row| row.cells.each do |cell| puts cell.text endend
输出结束符puts end
输出完整的输出结果puts - helloputs - xyz.png
这段代码会输出:hello- hello- xyz.pngend
请注意,这个示例使用了Nokogiri库来解析HTML,它是一个常用的Ruby库,用于处理HTML和XML文档。如果您没有安装Nokogiri,您需要先安装它,但根据您的要求,我没有包括安装步骤。
<table> <tr> <td>hello</td> <td><img src="xyz.png" width="100" height="100"></td> </tr> </table> tabledata.rows.each do |row| row.cells.each do |cell| puts cell.text end end puts "end"
获得输出 – >
hello end
我应该怎么做这样的输出 – >
hello xyz.png end
没有使用Nokogiri.
获取属性您可以使用Element#attribute_value方法获取元素的属性.例如,
element.attribute_value( ‘属性’)
对于许多标准属性,您还可以执行以下操作:
element.attribute
输出单元格文本或图像文本
假设单元格有文本或图像:
>您可以遍历单元格
>检查图像是否存在
>输出图像src(如果存在)
>否则输出单元格文本
这看起来像:
tabledata.rows.each do |row| row.cells.each do |cell| if cell.image.exists? puts cell.image.src #or cell.image.attribute_value('src') else puts cell.text end end end puts "end"

