python ,xpath 下一级如何取得内容,代码示例
时间: 2024-09-22 08:09:31 浏览: 54
Python-爬虫-学习代码(学习使用)【Python爬虫练手项目】
在Python中,使用`lxml`库操作XPath来获取HTML文档下级元素的内容非常常见。假设你已经有了一个HTML字符串或是一个已经解析好的ElementTree对象,你可以通过指定XPath表达式来获取内容。下面是一个简单的代码示例:
```python
from lxml import etree
# 假设你有一个HTML字符串
html_doc = """
<html>
<body>
<div id="content">
<h1>标题</h1>
<p>这是段落内容。</p>
<ul>
<li>列表项1</li>
<li>列表项2</li>
</ul>
</div>
</body>
</html>
"""
# 解析HTML
root = etree.fromstring(html_doc)
# 使用XPath获取下一级的<p>标签内容
paragraph_content = root.xpath('//div[@id="content"]/p/text()')[0]
print(paragraph_content) # 输出:这是段落内容。
# 获取<ul>下的所有<li>内容
list_items = root.xpath('//div[@id="content"]/ul/li/text()')
for item in list_items:
print(item) # 输出:列表项1 和 列表项2
```
在这个例子中,`//div[@id="content"]/p/text()`选取了id为"content"的div元素内的所有p标签的内容,而`//div[@id="content"]/ul/li/text()`则选取了ul下的所有li标签的内容。
阅读全文