You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Nokogiri获取网页中所有bookTitle类的元素?

获取所有bookTitle元素并提取标题数组的方法

你可以通过以下几种方式获取所有.bookTitle元素,并将它们的文本内容存入数组:

方法一:CSS选择器(推荐,语法简洁)

at_css仅返回匹配的第一个元素,改用css方法可获取全部匹配元素,再通过map提取每个元素的文本:

doc = Nokogiri::HTML(URI.open("https://www.goodreads.com/search?utf8=%E2%9C%93&q=barack+obama&search_type=books&search%5Bfield%5D=author"))

# 提取所有标题到数组
book_titles = doc.css('.bookTitle').map(&:content)
puts book_titles

方法二:XPath选择器

利用你已确认有效的XPath表达式,同样通过map提取文本:

book_titles = doc.xpath('//*[@class="bookTitle"]').map(&:content)
puts book_titles

额外优化

如果标题文本存在前后空白,可添加strip处理:

book_titles = doc.css('.bookTitle').map { |title| title.content.strip }

内容的提问来源于stack exchange,提问作者sharataka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 12:25:14