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)
相关推荐
吴声子夜歌19 分钟前
小程序——生命周期函数和事件处理函数
服务器·前端·小程序
tod1131 小时前
Reactor反应堆模式
网络·网络协议·tcp/ip·reactor·多路转接·tcpdump
xuzhiqiang07246 小时前
Java进阶之路,Java程序员职业发展规划
java·开发语言
时艰.7 小时前
订单系统历史数据归档方案
java
一只叫煤球的猫9 小时前
ThreadForge v1.1.0 发布:让 Java 并发更接近 Go 的开发体验
java·后端·性能优化
Codefengfeng9 小时前
分辨压缩包的真加密与伪加密
linux·运维·网络
014.9 小时前
2025最新jenkins保姆级教程!!!
java·运维·spring boot·spring·jenkins
浣熊8889 小时前
天机学堂虚拟机静态ip无法使用(重启后ip:192.168.150.101无法使用连接Mobaxterm数据库等等,或者无法使用修改之后的Hosts域名去访问nacos,jenkins)
java·微服务·虚拟机·天机学堂·重启之后静态ip用不了
白太岁9 小时前
通信:(3) 高并发网络通信:epoll + 边沿触发 + 非阻塞 IO + tcp
c语言·网络·c++·网络协议·tcp/ip
心 -9 小时前
java八股文IOC
java