python3 | XPath 安装及导入方法

前言

xpath,常在爬虫程序中,用以网页解析、文本提取等。

本文基于 Windows系统 + python3 ,详细说明了 xpath 的安装及导入方法。

一、XPath 安装

python3 中,xpath 被封装在 lxml 解析库中,所以 xpath 安装,实际上是 lxml 库的安装。

python3 安装 lxml 解析库,有以下两种方法。

**一是:**最简单直接的 pip 命令安装------pip install lxml。(优先使用)

二是: 下载whl 文件进行安装。(第一种实在不行时再考虑)

(一)pip 命令直接安装

第一种情况:

如果安装 python 环境时,已经配置了环境变量,直接启动命令提示符(cmd)窗口,输入命令:pip install lxml,然后回车即可。

注:python 环境变量的配置方法及原理,可参考往期文章环境变量 | 是不是必须配置?怎么配置?

第二种情况:

如果安装 python 环境时,没有配置环境变量,启动命令提示符(cmd)窗口后,可以先进入到本机 python 环境安装的 Scripts 文件路径下(以自己本机安装路径为准,以下为作者示例),再输入命令:pip install lxml,然后回车。出现下图提示,则表示安装成功。

(二)whl 格式文件安装

应优先考虑使用 pip 命令安装,因为该安装方式最直接简单,但有时会因本机的一些环境问题导致安装失败。

此时,可以再考虑使用 whl 格式文件安装方法。

第一步:首先在需要下载 python 相应版本的安装文件。

以 python3.6 版本为例,下载对应版本的 whl 格式文件为:

lxml-4.5.2-cp36-cp36m-win_amd64.whl

第二步:进入到 python 环境安装的 Scripts 文件目录下(这里与(一)中原理一致,没有配置环境变量情况下)

输入命令:pip install whl格式文件完整路径

pip install lxml-4.5.2-cp36-cp36m-win_amd64.whl

注:上面举例中,直接将whl格式文件复制到了Scripts文件目录下,所以完整命令直接是:pip install lxml-4.5.2-cp36-cp36m-win_amd64.whl。根据自己whl文件路径做修改,如放在E盘根目录下,命令则变成:pip install E:\lxml-4.5.2-cp36-cp36m-win_amd64.whl

二、xpath 导入及使用方法

xpath 导入有以下两种方法。

**(一)第一种:**etree

**导入:**from lxml import etree

**使用:**etree.HTML().xpath()

示例如下:

python 复制代码
from lxml import etree
res = '''<div>
<h1 id="td" href >xpath安装及使用</h1>
</div>'''
a = etree.HTML(res).xpath('//h1//text()')
print('解析结果:\n', a)

**(二)第二种:**html

**导入:**from lxml import html

**使用:**html.etree.HTML().xpath()

示例如下:

python 复制代码
from lxml import html
res = '''<div>
<h1 id="td" href >xpath安装及使用</h1>
</div>'''
a = html.etree.HTML(res).xpath('//h1//text()')
print('第二种解析结果:\n', a)

以上就是 xpath 安装及导入方法,可供参考。

-end-

相关推荐
SilentSamsara9 小时前
MLflow 实验追踪与模型注册:从实验到生产的可复现工作流
开发语言·人工智能·pytorch·python·青少年编程
曲幽9 小时前
写爬虫时用了代理还被封?Python 代理的那些隐藏坑,我替你踩明白了
python·http·https·proxy·socks·requests·socks5·proxies
装不满的克莱因瓶9 小时前
掌握多头自注意力机制(Multi-Head Self-Attention)——Transformer 强大表达能力的核心来源
人工智能·python·深度学习·数学·ai·transformer
下班走回家9 小时前
RAG 技术的进化:从朴素检索到 Agentic RAG
开发语言·人工智能·python
用什么都重名9 小时前
Python文本匹配利器:FlashText与RapidFuzz深度对比
python·flash text·rapidfuzz
@Ma9 小时前
Python 实现企业微信外部群主动消息发送及成功接入后如何避坑,避免风控封号
开发语言·python·企业微信
DXM05219 小时前
第10期| 卷积神经网络CNN通俗详解:AI遥感的底层核心
人工智能·python·神经网络·机器学习·arcgis·cnn·文心一言
Hello:CodeWorld9 小时前
AI Agent:从核心原理、架构框架到工程实战,大模型时代的自主智能革命
大数据·人工智能·python·架构
DA02219 小时前
01-Python-数据类型和语法
开发语言·python
装不满的克莱因瓶9 小时前
掌握空间注意力 STN 模型结构——让神经网络学会自动“看准位置”
人工智能·python·深度学习·神经网络·机器学习·ai