zl程序教程

您现在的位置是:首页 >  其他

当前栏目

爬虫之Xpath解析

2023-02-26 10:20:40 时间

xpath解析

xpath表达式

  • 标签定位

    • 最左侧的/:必须要从根标签开始逐层的定位目标标签
    • 非最最侧的/:表示一个层级
    • 最左侧的//:可以从任意位置定义目标标签
    • 非最左侧的//:表示多个层级
    • 属性定位://tagName[@attrName=’value’]
    • 索引定位://tagName[index],index索引是从1开始
    • 模糊匹配:

      • //div[contains(@class, “ng”)] 定位到class属性值中包含ng的div标签
      • //div[starts-with(@class, “ta”)] 定位到class属性值中是以ta开头的div标签
  • 数据提取

    • 取标签中的数据

      • /text():直系文本内容
      • //text():所有的文本内容
    • 取属性的数据

      • [email protected]
from lxml import etree

In [35]:

tree = etree.parse('./test.html?userCode=wrvvs1rm')#将本地存储的html文档进行解析 tree

Out[35]:

<lxml.etree._ElementTree at 0x10af51508>

In [38]:

tree.xpath('/html/head')#从根标签开始定位head标签 tree.xpath('//head') #将html文档中所有的head标签定位到

Out[38]:

[]

In [40]:

tree.xpath('/html//meta')

Out[40]:

[<Element meta at 0x10d9d2e88>]

In [43]:

#定位class为song的div标签 tree.xpath('//div[@class="song"]')

Out[43]:

[<Element div at 0x10d9cca88>]

In [49]:

tree.xpath('//li[1]')

Out[49]:

[<Element li at 0x10dcb8708>]

In [52]:

tree.xpath('//a[@id="feng"]/text()')

Out[52]:

['凤凰台上凤凰游,凤去台空江自流,吴宫花草埋幽径,晋代衣冠成古丘']

In [54]:

tree.xpath('//div[@class="song"]//text()')

Out[54]:

['ntt',  '李清照',  'ntt',  '王安石',  'ntt',  '苏轼',  'ntt',  '柳宗元',  'ntt',  'nttt',  'this is span',  'ntt宋朝是最强大的王朝,不是军队的强大,而是经济很强大,国民都很有钱',  'ntt',  '总为浮云能蔽日,长安不见使人愁',  'ntt',  'nt']

In [56]:

tree.xpath('//a[@id="feng"][email protected]')

Out[56]:

['http://www.haha.com']

爬虫之Xpath解析


本站部分内容转载自网络,版权属于原作者所有,如有异议请联系QQ153890879修改或删除,谢谢!
转载请注明原文链接:爬虫之Xpath解析

你还在原价购买阿里云、腾讯云、华为云、天翼云产品?那就亏大啦!现在申请成为四大品牌云厂商VIP用户,可以3折优惠价购买云服务器等云产品,并且可享四大云服务商产品终身VIP优惠价,还等什么?赶紧点击下面对应链接免费申请VIP客户吧:

1、点击这里立即申请成为腾讯云VIP客户

2、点击这里立即注册成为天翼云VIP客户

3、点击这里立即申请成为华为云VIP客户

4、点击这里立享阿里云产品终身VIP优惠价

喜欢 (0)
[[email protected]]
分享 (0)