Python---爬虫---解析---xpath

重要语法

  1. / 根节点选取

  2. //当前目录下所有该节点

  3. .当前节点

  4. ..当前节点的父节点

  5. 节点选择语法

    1. /a/b[1], 选取a节点下的第一个b节点

    2. /a/b[last()], 选取a节点下的最后一个b节点

    3. /a/b[last()-1], 选取a节点下的倒数2个b节点

    4. /a/b[position()<3], 选取a节点下的前2个b节点

    5. //a[@b] 选取所有属性为b的a标签

    6. //a[@b = “c”] 选取所有,值为c的属性b的a标签

    7. /a/b[price>3.5] 选取a标签下的所有b标签,且价格为小于3.5

    8. 包含://div[contains(@class,"i")]  属性class包含有i的div

    9. 以什么开头: //div[start-with(@class,"i")] 属性class以i开头

    10. 以什么结尾: //div[end-with(@class,"i")] 属性class以i结尾

    11. //div[@*="i"] 选取所有,值为i的任意属性的a标签

    12. 不包含://div[not(contains(@class,"i"))]  属性class包含有i的div

    1. 使用xpath取区间,一个取下,一个取上,然后取两者的交集

      1. following-sibling   选取当前节点之后的所有同级节点       following   选取当前节点之后的所有节点

      2. preceding-sibling   选取当前节点之前的所有同级节点      preceding  选取当前节点之前的所有节点 

  6. 运算符

    1. 同一个网站,同一个子页面结构有很多不同的时候,可以通过or 来兼容,经验例子:百度百科。

  7. text() 和 string()

    1. string(.)获取当前标签及其子标签的文本,并将其拼接成一个字符串

  8.  

    etree.tostring(exactor_dd_list, encoding='utf-8',pretty_print=True, method='html').decode('utf-8')
    转html源码
  9. 经验之谈:
    可以通过对网页html字符串进行改动来适应xpath规则.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值