在这里,我使用xpath抓取亚马逊的某些页面。 这里,页面的代码如下(部分)
<div id="cm-cr-dp-review-list" data-hook="top-customer-reviews-widget" class="a-section review-views celwidget">
<div id="R3FBEIWJLE4KEI" data-hook="review" class="a-section review">
<div id="R1G0...." >
由于评论由标题和正文部分组成,我写了这样的ruby
脚本。
r = Nokogiri::HTML(revised_content)
reviews = r.xpath("//div[@class='a-section review-views celwidget']").map.with_index do |review, _ii|
binding.pry
{
title: make_japanese(review.xpath("//a[@data-hook='review-title']/text()").to_s),
content: make_japanese(review.xpath("//div[@data-hook='review-collapsed']/text()").to_s)
}
end
但是,这并没有制作映射内容,而是title
包含所有评论标题。我怎样才能有效地划分这样的结构化DOM?