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)
相关推荐
shixuzhimeng6 分钟前
FTP服务器项目
linux·网络·ftp
好家伙VCC18 分钟前
区块链双向支付通道实战:从签名到结算
java·后端·区块链·asp.net
剑神一笑23 分钟前
Linux chown 命令详解:从 inode 到实战
linux·运维·服务器
ss27326 分钟前
【入门OJ题解】分苹果问题(Python/Java/C 实现)
java·c语言·python
STDD36 分钟前
Linux cgroup v2 资源控制实战:限制进程 CPU/内存/IO,systemd slice 管理
linux·运维·服务器
weikecms38 分钟前
美团霸王餐报名API接口
java·开发语言
李白的天不白44 分钟前
配置mysql密码
java
何中应1 小时前
Nexus如何上传JAR包
java·maven·jar
Latticy1 小时前
内网渗透-横向移动-密码喷洒攻击和域内用(kerbrute使用)
运维·服务器·网络·内网渗透·内网