我刚开始使用 nokogiri 从网站上抓取信息,但不知道如何完成以下工作。我有一些要抓取的 HTML 代码:
<div class="compatible_vehicles">
<div class="heading">
<h3>Compatible Vehicles</h3>
</div><!-- .heading -->
<ul>
<li>
<p class="label">Type1</p>
<p class="data">All</p>
</li>
<li>
<p class="label">Type2</p>
<p class="data">All</p>
</li>
<li>
<p class="label">Type3</p>
<p class="data">All</p>
</li>
<li>
<p class="label">Type4</p>
<p class="data">All</p>
</li>
<li>
<p class="label">Type5</p>
<p class="data">All</p>
</li>
</ul>
</div><!-- .compatible_vehicles -->
我已经设法在我的屏幕上获得了我想要的输出:
i = 0
doc.css('div > .compatible_vehicles > ul > li').each do |item|
label = item.at_css(".label").text
data = item.at_css(".data").text
print "#{label} - #{data}" + ','
end
i += 1
这给了我一个像这样的列表:Type1 - All,Type2 - All,Type3 - All,Type4 - All,Type5 - All,在屏幕上。
现在我想在数组中获取这个值,以便能够将其保存到 CSV 文件中。我尝试了几件事,但大多数尝试都收到“无法将字符串转换为数组”错误。希望有人可以帮助我解决这个问题!