8、网页数据抓取:从基础到实战

网页数据抓取:从基础到实战

在网页数据抓取的过程中,我们常常会面临多种选择。如果有一种方法比另一种更简便,或者能完成另一种方法无法完成的任务,那么就应该选择它。不过,了解多种元素选择方式也是很有价值的。

元素操作

当我们使用 XPath 或 CSS 选择器选定了适合当前任务的元素后,工作可能才完成了一半。通常,我们还需要对匹配到的元素进行实际操作,主要有以下两类任务:
- 信息提取 :提取元素的文本内容或属性值。信息的存储位置取决于所处理的元素和具体需求。例如,匹配到图片时,可能关注其 src 属性;匹配到段落时,则可能关注元素内的文本。
- 文档导航 :由于文档具有树状结构,我们可以从当前位置向上、向下或横向导航。这在处理特定元素的子元素或返回父元素继续操作时非常有用。

接下来,我们将介绍 Nodes 和 NodeSets 上的各种方法,以及如何使用它们完成这些任务。

从元素中提取信息

一般来说,从元素中可以提取三种信息:元素自身的文本内容、属性值和元素名称。Nokogiri 节点提供了三种有用的方法来提取这些信息。

  • 读取元素的文本 :可以使用 text 方法提取元素的文本。以下是一个提取文档中所有二级标题文本的示例:
require "nokogiri"
doc = Nokogiri::HTML(<<-DOC)
<
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值