首页 > 编程语言 > 详细

python爬虫边看边学(xpath模块解析)

时间:2021-04-02 21:49:09      阅读:34      评论:0      收藏:0      [点我收藏+]

xpath模块解析

       Xpath是一门在 XML 文档中查找信息的语言。 Xpath可用来在 XML文档中对元素和属性进行遍历。而我们熟知的HTML恰巧属于XML的一个子集。所以完全可以用xpath去查找html中的内容。

一、安装lxml模块

       pip install lxml

       用法:1、将要解析的html内容构造出etree对象。

                  2、使用etree对象的xpath方法配合xpath表达式来完成对数据的提取。

简单案例:

from lxml import etree

xml=‘‘‘
<book>
    <id>1</id>
    <name>野花遍地?</name>
    <price>1.23</price>
    <nick>臭?腐</nick>
    <author>
        <nick id="10086">周?强</nick>
        <nick id="10010">周芷若</nick>
        <nick class="joy">周杰伦</nick>
        <nick class="jolin">蔡依林</nick>
    <div>
        <nick>热了</nick>
    </div>
    <span>
        <nick>热了哦</nick>
    </span>
    </author>
    
    <partner>
    
        <nick id="ppc">胖胖陈</nick>
        <nick id="ppbc">胖胖不陈</nick>
    </partner>
</book>
‘‘‘

tree=etree.XML(xml)
res=tree.xpath(‘/book/name/text()‘)   #text() 拿文本
print(res)
# [‘野花遍地?‘]
res=tree.xpath(‘/book/author/nick/text()‘)
print(res)
# [‘周?强‘, ‘周芷若‘, ‘周杰伦‘, ‘蔡依林‘]
res=tree.xpath(‘/book/author//nick/text()‘)   # // 后代
print(res)
# [‘周?强‘, ‘周芷若‘, ‘周杰伦‘, ‘蔡依林‘, ‘热了‘, ‘热了哦‘]
res=tree.xpath(‘/book/author/*/nick/text()‘)   #  * 任意一个节点
print(res)
# [‘热了‘, ‘热了哦‘]

  

 

python爬虫边看边学(xpath模块解析)

原文:https://www.cnblogs.com/shixiaoxun/p/14612047.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!