lxml 解析xml\html

复制代码
from lxml import etree

# XML文档示例
xml_doc = """
<root>
    <book>
        <title>Python编程指南</title>
        <author>张三</author>
    </book>
    <book>
        <title>Python高级编程</title>
        <author>李四</author>
    </book>
</root>
"""

# 创建ElementTree对象并解析XML文档
root = etree.fromstring(xml_doc)

# 使用XPath定位元素并打印内容
books = root.xpath('//book')
for book in books:
    title = book.xpath('title/text()')[0]
    author = book.xpath('author/text()')[0]
    print(f"书名:{title},作者:{author}")
复制代码
# HTML文档示例
html_doc = """
<html>
<body>
    <h1>标题</h1>
    <p>段落1</p>
    <p>段落2</p>
</body>
</html>
"""

# 创建HTML解析器并解析HTML文档
parser = etree.HTMLParser()
root = etree.fromstring(html_doc, parser)

# 遍历HTML元素并打印内容
for element in root.iter():
    print(element.tag, element.text)
复制代码
from lxml import html
import requests
 
# 发送HTTP请求获取网页内容
response = requests.get('https://example.com')
html_content = response.content
 
# 使用lxml解析HTML内容并提取信息
tree = html.fromstring(html_content)
title = tree.xpath('//title/text()')[0]
paragraphs = tree.xpath('//p/text()')
print('标题:', title)
print('段落:')
for p in paragraphs:
    print(p)
相关推荐
D_aniel_9 分钟前
排序算法-堆排序
java·排序算法·堆排序
哞哞不熬夜21 分钟前
JavaEE--文件操作和IO
java·开发语言·windows·学习·java-ee·intellij-idea·idea
天蓝不会忘记0224 分钟前
OSPF综合实验
网络·智能路由器
LUCIAZZZ29 分钟前
JVM之内存管理(二)
java·jvm·后端·spring·操作系统·springboot
向哆哆33 分钟前
Hibernate 性能优化:告别慢查询,提升数据库访问性能
java·数据库·性能优化·hibernate
妄想成为master39 分钟前
如何租用服务器并通过ssh连接远程服务器终端
服务器·ssh·远程服务器链接
小雅痞1 小时前
[Java][Leetcode middle] 80. 删除有序数组中的重复项 II
java·python·leetcode
一只程序熊1 小时前
【uniapp】errMsg: “navigateTo:fail timeout“
服务器·前端·uni-app
IT飞牛1 小时前
Linux服务器常用运维工具/命令
linux·运维·服务器
小吕学编程1 小时前
Redis从基础到高阶应用:核心命令解析与延迟队列、事务消息实战设计
java·数据结构·redis