我正试图用Nokogiri来刮掉一个表格的select元素.
例如:
<select id="colors" name="colors">
<option class="" value="1">Blue</option>
<option class="" value="2">Green</option>
</select>
Run Code Online (Sandbox Code Playgroud)
我想1 => 'Blue',2 => 'Green'等
我试着用at_css和xpath,但都没有运气.
我猜这将是正确的轨道:
doc.at_css("#colors option").each do |d|
puts d
end
Run Code Online (Sandbox Code Playgroud)
这给了我一个:
value
Run Code Online (Sandbox Code Playgroud)
我可以option使用xpath 获取页面上的每个文本.
doc.css("#colors option").each do |d|
puts d.attr("value")
puts d.text
end
Run Code Online (Sandbox Code Playgroud)
或作为对象:
doc.css("#colors option").each_with_object({}) do |e,o|
o[e.attr("value")] = e.text
end
Run Code Online (Sandbox Code Playgroud)