lxml 库是用来解析XML和HTML网页内容的
Xpath 库则是用来查询数据(XPath表达式是一种在XML文档中查找信息的语言,它同样适用于HTML文档)
简单示例:
# 先pip install lxml
import requests
from lxml import etree # etree主要是用来解析和操作XML/HTML文档
# 步骤3:获取网页内容
url = 'http://example.com' # 替换为你想要爬取的网页的URL
response = requests.get(url)
html_content = response.text
# 步骤4:解析网页内容
tree = html.fromstring(html_content)
# 步骤5:使用XPath查询数据
result = tree.xpath('//h1/text()')
# 步骤6:处理查询结果
for item in result:
print(item.strip()) # 去除可能存在的空白字符并打印
补充关于etree.parse() 和 etree.fromstring()以及 etree.XML()的区别
* etree.parse() 用来解析XML文档或类似文件的对象,所以参数中提供文件名或文件对象作为输入
* etree.XML() 用来解析字符串:该字符串是完整的 XML 文档(即包含根元素),所以参数中放入完整的 XML 字符串作为输入
* etree.fromstring() 用来解析字符串:不一定包含根元素,所以参数中放入 XML 字符串作为输入
标签:xpath,XML,lxml,etree,爬取,文档,字符串,解析
From: https://www.cnblogs.com/abloger/p/18242383