XPath 语法与爬虫实战总结指南

目录

一、XPath 是什么?

二、 XPath 基础语法速查表

三、常见 XPath 示例与说明 

四、使用 xpath 提取网页内容详细示例

1. 提取元素的文本内容

2. 提取链接地址(href 属性)

3. 提取多个列表项

4. 提取第一个或最后一个元素

5. 使用 contains() 匹配部分 class

6. 提取标签的属性值

7. 提取嵌套结构文本

8. 提取指定文本的元素

9. 多条件选择与逻辑表达式

10. 使用 starts-with() 匹配属性前缀

11. 提取父元素或兄弟元素

 三、 XPath 小的综合代码

XPath 总结


一、XPath 是什么?

XPath(XML Path Language)是一种用于在 XML 或 HTML 文档中定位和提取数据的语言。

在 Web 爬虫中,它被广泛用于解析 HTML 页面,精准定位你需要的标签、属性和内容。

lxmlscrapy 中,XPath 是最常用的选择器之一。

二、 XPath 基础语法速查表

表达式 含义
/ 从根节点选取
// 从任意位置选取
. 当前节点
.. 当前节点的父节点
@ 属性

三、常见 XPath 示例与说明 

表达式 说明
//div 选取所有 <div> 标签
//div[@class="item"] class 为 item 的 div
//a/@href 提取所有链接地址
//p/text() 提取所有 <p> 标签中的文本
//ul/li[1] 提取第一个 <li>
//ul/li[last()] 最后一个 <li>
//div[contains(@class, "content")] class 含有 content 的 div
//span[starts-with(@class, "tag-")] class 以 tag- 开头的 span
//a[text()="登录"] 文本内容为“登录”的链接
//div[@id="main"]/p[2]/text() id 为 main 的 div 中第二个 <p> 的文本

四、使用 xpath 提取网页内容详细示例

每个模块包含:

  • 页面 HTML 示例

  • Python CSS 选择器提取代码

  • 简要文字说明

1. 提取元素的文本内容

提取标签中的纯文本内容。

HTML 示例

<h1 class="title">这是主标题</h1>

Python

from lxml import html

tree = html.fromstring(html_code)
title = tree.xpath('//h1[@class="title"]/text()')[0]

2. 提取链接地址(href 属性)

提取超链接的地址

<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值