19.6 xpath的入门使用
进行数据筛选的时候正则表达式
xpath全称xml path
json {“id”:1,“name”:“zahng”}
Html超文本标记语言
xml:
1
张三
xpath规则:
nodename ----------- 选取所有节点的子节点
/ ------------------------ 根节点
// ------------- 从当前的节点选取子孙节点
. ---------------------- 选取当前节点
… ------------------- 选取当前节点的父节点
@ -------------------- 选取属性
在pycharm使用xpath需要安装lxml
pip install lxml
python - m pip install lxml
pip install lxml -i http://pypi.douban.com/simple/
from lxml import etree
content = """
<div class = "containner">
<ul class = "first">
<li><a href = "#">内容1</a></li>
<li><a href = "http://www.taobao.com">内容2</a></li>
<li class = "active"><a href = "#">内容3</a></li>
<li><a href = "#">内容4</a></li>
<li><a href = "http://www.baidu.com">内容5</a></li>
<li><a href = "#">内容6</a></li>
<li><a href = "#">内容7</a></li>
<li><a href = "#">内容8</a></li>
</ul>
</div>
"""
#etree.HTMLParser()解析器
html = etree.HTML(content,etree.HTMLParser())
print(html) #获取所有li标签下a标签的内容
# res = html.xpath("//li/a/text()")
# print(res)
#获取a标签的属性
# res = html.xpath("//li/a/@href")
# print(res)
#如果要加上属性值
res = html.xpath("//li/a[@href='http://www.baidu.com']/text()")
print(res)
推荐大家使用:xpathhelper工具