爬虫(三)lxml库和Xpath语法

本文介绍了XPath语言在XML文档中的应用,详细讲解了XPath的选择节点、谓语、选取未知节点和运算符等核心概念。同时,重点阐述了lxml库在Python中的使用,包括HTML代码解析、文件读取以及实例测试,展示了如何结合XPath快速定位和提取XML/HTML数据。
摘要由CSDN通过智能技术生成

一.Xpath简介

1.什么是Xpath?

XPath (XML Path Language) 是一门在 XML 文档中查找信息的语言,可用来在 XML 文档中对元素和属性进行遍历。

2.选择节点

XPath 使用路径表达式来选取 XML 文档中的节点或者节点集。这些路径表达式和我们在常规的电脑文件系统中看 到的表达式非常相似。最常用的路径表达式:
在这里插入图片描述
在这里插入图片描述

3.谓语

谓语用来查找某个特定的节点或者包含某个指定的值的节点,被嵌在方括号中。

在这里插入图片描述

4.选取未知节点

XPath 通配符可用来选取未知的 XML 元素。
在这里插入图片描述

5.Xpath的运算符

在这里插入图片描述

二.lxml库

lxml 是 一个HTML/XML的解析器,主要的功能是如何解析和提取 HTML/XML 数据。
lxml和正则一样,也是用 C 实现的,是一款高性能的 Python HTML/XML 解析器,可以利用之前学习的XPath语法,快速定位特定元素以及节点信息。

1.解析HTML代码

lxml 可以自动修正 html 代码,不仅补全了 li 标签,还添加了 body,html 标签。
在这里插入图片描述

2.文件读取

利用 etree.parse() 方法来读取文件
在这里插入图片描述

3.实例测试

在这里插入图片描述

三.项目案例

慕课网课程信息采集

import re

import requests
# User-Agent随机选择代理模块;
from fake_useragent import  UserAgent
from lxml import etree
import  pandas as pd
# 线程池
from concurrent.futures import  ThreadPoolExecutor

def get_content(url):
    """数据采集"""
    try:
        headers = {
   
            'User-Agent': ua.random,

        }
        response = requests.get
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值