首页 > 其他分享 >xpath

xpath

时间:2024-02-26 17:23:41浏览次数:23  
标签:xpath etree tree div class red

笔记

xpath解析原理:
    - 数据解析原理:
        -1.实例化一个etree对象,且将页面源码数据加载到该对象中
        -2.调用etree对象中xpath方法,编写xpath表达式,提取数据
    - 环境安装:
        - pip install lxml
    - 实例化一个etree对象: from lxml import etree
        - 1.将本地中的html文档中的源码加载到etree对象中
            etree.parse(filePath)
        -2 .将互联网上获取的页面加载到etree对象中
            etree.HTML('page_text')   
        - xpath('xpath表达式')
    -xpath表达式:
        /:表示从根节点开始定位。表示的是一个层级
        //:表示的是从任意位置开始定位。表示的是多个层级
        - 属性定位:r = tree.xpath('//div[@class="red"]') #属性定位
        - 索引定位:r = tree.xpath('//div[@class="red"]/p[3]') #div class=red标签下的第三个p标签
        - 提取文本:r = tree.xpath('//div[@class="red"]/p[3]/text()')
            - /text():获取的是标签中直系文本内容
            - //text():获取的是标签中所有文本内容
        - 属性提取:r = tree.xpath('//div[@class="red"]/img/@src')
            - /@attrName   ==>img/src

代码

from lxml import etree
if __name__ == '__main__':
    # 实例化好了一个etree对象
    tree = etree.tree('test.html')
    # r = tree.xpath('/html/head/title') # xpath为 /html/head/title根目录下html下head下的title标签
    # r = tree.xpath('//div[@class="red"]') #属性定位
    r = tree.xpath('//div[@class="red"]/p[3]') #div class=red标签下的第三个p标签
    print(r)

标签:xpath,etree,tree,div,class,red
From: https://www.cnblogs.com/lin513/p/18034776

相关文章

  • xpath寻找标签
    语法格式如下1标签名#找xml中所有这个标签2/#只找一层3//#子子孙孙都会找4.#从当前路径下5..#上一层6@属性名#找有这个属性的标签数据准备doc='''<html><head><basehref='http://example.com/'/><title>Examplew......
  • 【JAVA】Java 使用 XPath表达式定位节点读取自定义XML方法
    *加载配置文件节点*@paramattributeValue节点属性值*@paramareaCode节点属性值*/publicstaticMap<String,String>getConfigXml(StringattributeValue,StringareaCode){StringfilePath="config.xml";Map<St......
  • Xpath的基本使用
    XPath(全称:XMLPathLanguage)即XML路径语言,它是一门在XML文档中查找信息的语言,最初被用来搜寻XML文档,同时它也适用于搜索HTML文档,因此,自动化测试中可以使用XPath寻找目标节点操作,在爬虫过程中可以使用XPath来提取相应的数据。Xpath使用路径表达式来选取XML/HTML文档......
  • XPath从入门到精通:基础和高级用法完整指南,附美团APP匹配示例
    XPath通常用来进行网站、XML(APP)和数据挖掘,通过元素和属性的方式来获取指定的节点,然后抓取需要的信息。学习XPath语法之前,首先了解一下一些概念。概念介绍节点之间的关系以上面的HTML节点树为例,节点之间包含了下列的关系:父节点(Parent):HTML是DIV和P节点的......
  • XPath基本语法的使用
    xpath基本语法https://www.jb51.net/program/306644fge.htmhttps://www.cnblogs.com/wu-wu/p/11642992.htmlhttps://blog.csdn.net/Once_day/article/details/129869027XPath语法|菜鸟教程https://zhuanlan.zhihu.com/p/3429030851.XPath概述1.1概述下面是关于xpath的概述......
  • xpath 一键去除前后空白、回车、换行
    使用xpath方式,打印结果,经常出现大量换行、空格等情况fromlxmlimportetree#data=etree.parse('./素材/示例网站.html')parser=etree.HTMLParser(encoding="utf-8")#出现读取错误时,需要加入parser参数data=etree.parse('./素材/示例网站.html',parser=parser)ch......
  • Jmeter后置处理器之xpath提取器
    一前言:环境:Jmeter5.3window10简单介绍下后置处理器中的xpath提取器二xpath提取器当接口返回内容是xml格式或者html格式时,可以使用xpath提取器从中提取值参数字段说明:applyto:前面介绍的断言及其他提取器都有这个选项,就不重复了xmlparsingoptions:与前面介绍的xpa......
  • 使用Commons JXPath简化XML/JSON处理
    第1章:引言咱们都知道,在现代软件开发中,处理XML和JSON数据几乎是家常便饭。这两种格式广泛应用于配置文件、数据交换、API响应等领域。不过,要手动解析和操作它们,有时候真是让人头大。当你面对一堆复杂的XML或JSON文件时,如果有一个工具能直接帮你找到想要的数据,那该多好。JXPath正......
  • 使用Commons JXPath简化XML/JSON处理
    第1章:引言咱们都知道,在现代软件开发中,处理XML和JSON数据几乎是家常便饭。这两种格式广泛应用于配置文件、数据交换、API响应等领域。不过,要手动解析和操作它们,有时候真是让人头大。当你面对一堆复杂的XML或JSON文件时,如果有一个工具能直接帮你找到想要的数据,那该多好。JXPath正......
  • 使用Commons JXPath简化XML/JSON处理
    第1章:引言咱们都知道,在现代软件开发中,处理XML和JSON数据几乎是家常便饭。这两种格式广泛应用于配置文件、数据交换、API响应等领域。不过,要手动解析和操作它们,有时候真是让人头大。当你面对一堆复杂的XML或JSON文件时,如果有一个工具能直接帮你找到想要的数据,那该多好。JXPath正......