一.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