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)
相关推荐
范什么特西几秒前
亲和路由11
java
程序猿老A3 分钟前
轻量应用服务器怎么搭建网站?
服务器·阿里云
资深电气设计4 分钟前
明治MLD25系列激光位移传感器技术解析:3C行业零件厚度测量方案参考
网络
诺NA亚9 分钟前
ElasticSearch+RAG初使用
java
hz5678910 分钟前
数据本地化音视频系统设计:数据存储、传输路径与访问权限管理
网络·安全·音视频·实时音视频·信息与通信
SamDeepThinking13 分钟前
synchronized 和 lock 有什么区别?
java·后端·面试
m0_5873830018 分钟前
无人自助拼豆系统的全栈开发方案
java·后端·struts·小程序·架构
笨手笨脚の28 分钟前
从一行 ip route 到容器跨主机通信
网络·网络协议·tcp/ip
临期冰淇淋31 分钟前
MTK平台 安卓16 GMS报错修改
android·java·前端
mmsx31 分钟前
Android 模块化三件套:轻量组件化、宿主插件双形态、AIDL 隔离
android·网络·组件化·aidl