首页 > 编程语言 >python中的Xpath的安装及使用

python中的Xpath的安装及使用

时间:2022-10-20 11:00:27浏览次数:43  
标签:Xpath xpath lxml etree python html pip 安装 源码

Xpath是一门在 XML 文档中查找信息的语言。XPath 可用来在 XML 文档中对元素和属性进行遍历。XPath 是 W3C XSLT 标准的主要元素,并且 XQuery 和 XPointer 都构建于 XPath 表达之上。

  • 安装lxml模块
  • pip install lxml (此处如果下载速度比较慢,可以通过查看之前的博客所写的方法)
  • 导入extree(from lxml import etree)
  • tree = extree.XML()
  • tree = extree.html() 服务器响应文件
  • tree = extree.parse() 解析本地文件
    比如: html_tree = etree.parse(‘xxx.html’)
  • 然后通过tree即可进行相关的xpath操作

路径获取

  • 鼠标右键查看网页源代码
  • 快捷键 Ctrl + Shift + x 打开xpath工具
  • 在Query框输入路径,在Result中显示定位的值

环境的安装

使用 xpath 需要安装 lxml 库,在这里需要用pip的安装命令,所以我在这里给大家总结了两种提高速度的方式.

使用国内的镜像下载

  1. 临时使用
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple  自己要下载的包

注意 : i即是表示临时的意思

  1. 设为默认

注意: 升级 pip 到最新的版本 (>=10.0.0) 后进行配置

pip install pip -U
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

在这里我们也可以采用如下方式:

pip install lxml -i https://pypi.tuna.tsinghua.edu.cn/simple

xpath常用表达式

python中的Xpath的安装及使用_html

基础使用

实例化一个etree的对象,且需要将被解析的页面源码数据加载到该对象中。有两种方式:
1、将本地的html文档中的源码数据加载到etree对象中
​​​etree.parse('filePath', etree.HTMLParser()) # filePath为文件的路径​

示例:

from lxml import etree # 导包
html = etree.parse('./test.html', etree.HTMLParser()) # ./test.html为本地的html文件的路径
html.xpath('xpath表达式')

2、将从互联网上获取的源码数据加载到etree对象中
​​​etree.HtML('page_data') # page_data为从页面获取的源码数据​

示例:

from lxml import etree # 导包
html = etree.HtML('page_data') # page_data为从页面获取的源码数据
html.xpath('xpath表达式')

Xpath使用工具

chrome生成xpath表达式

经常使用chrome的小伙伴都应该知道这个功能,在"审查"状态下(快捷键ctrl+shift+i,F12),定位到元素(快捷键ctrl+shift+c) ,在Elements选项卡中,右键元素 Copy->Copy xpath,就能得到该元素的xpath了



标签:Xpath,xpath,lxml,etree,python,html,pip,安装,源码
From: https://blog.51cto.com/u_15638660/5779151

相关文章

  • 第三章 NPM安装yarn
    安装yarn的前提是需要先安装好npm,且环境变量都配置好了,才可以使用。一、下载安装#1.安装yarn[root@VM-0-15-centos~]#npminstallyarn-gadded1packagein1s......
  • Mac-mac电脑用homebrew来安装报错
    用homebrew安装软件,brewinstallgradle 报错如下:Brew:MacOS使用brew命令报错“Erroropeningarchive:Failedtoopen‘../Caches/Homebrew../”   ......
  • centos8-stream下用rpm包安装ipmitool
    首先准备一个U盘,格式化成:FAT32接着下载:ipmitool.rpm,放进U盘然后插入服务器fdisk-l#显示当前分区情况mkdir-p/mnt/usb#创建文件夹当作挂载点mount/de......
  • python DeepRacer超参
    超级参数(Hyperparameters)参考了这篇文章https://rambo.blog.csdn.net/article/details/120643653训练的过程:1、小车根据经验操作或者随机操作,跑出界或者跑完一圈后为......
  • python DeepRacer生成最优路径和速度
    DeepRacer生成最优路径和速度获取赛道数据从github下载:https://github.com/aws-deepracer-community/deepracer-race-dataraw_data里边就是赛道数据,reinvent2018:是rein......
  • python-opencv cv.imshow 错误
    本文平台windows报错信息: cv2.imshow('imshow',img))Thefunctionisnotimplemented.RebuildthelibrarywithWindows,GTK+2.xorCocoasupport.Ifyouare......
  • python实验报告(第六周)
    一、实验目的1.掌握如何创建并调用一个函数,以及如何进行参数传递和指定函数的返回值等。2.掌握变量的作用域和匿名函数。二、实验环境python版本:3.10(64-bit)三、实验内......
  • python使用selenium操作浏览器
    重复的操作令手工测试苦不堪言,于是自动化测试出现了!作为web应用里最出名的自动化测试工具,selenium让web应用的测试轻松了很多。今天我们就来简单的介绍一下一些简单的sele......
  • DAPR in Python
    最近在部署项目时,用到了DAPR,记录一下。一、安装     本地安装  https://docs.dapr.io/zh-hans/getting-started/install-dapr-cli/      docker内安......
  • 1.TP6的入门-安装
    打开​​官网​​,找到这里点击手册 或者直接访问​​这里​​ 可以看到TP6已经有了赞助商然后往后面阅读,发现他推荐我们读这个   这个入门必读还是不错的,简单的看......