<div class="carstd">
<ul>
<li class="cars">"Car 1"</li>
<li class="cars">"Car 2"</li>
<li class="cars">"Car 3"</li>
<li class="cars">"Car 4"</li>
</ul>
</div>
我想用机械化从每个列表项中删除文本并将其打印出来。我试过了 puts page.at('.cars').text.strip
但它只得到第一项。我也试过
page.links.each do |x|
puts x.at('.cars').text.strip
end
但是我undefined method 'at' for #<Mechanize::Page::Link:0x007fe7ea847810>
收到一个错误.
那里
没有链接。链接是转换为特殊机械化对象的a
元素。你想要这样的东西:
page.search('li.cars').text # the text of all the li's mashed together as a string
或
page.search('li.cars').map{|x| x.text} # the text of each `li` as an array of strings