xpath插件安装:
注意:提前安装xpath插件
(1)打开chrome浏览器
(2)点击右上角小圆点
(3)更多工具
(4)扩展程序
(5)拖拽xpath插件到扩展程序中
(6)如果crx文件失效,需要将后缀修改zip
(7)再次拖拽
(8)关闭浏览器重新打开
(9)ctrl + shift + x
(10)出现小黑框
1.安装lxml库
pip install lxml ‐i https://pypi.douban.com/simple
2.导入lxml.etree
from lxml import etree
3.etree.parse() 解析本地文件
html_tree = etree.parse('XX.html')
4.etree.HTML() 服务器响应文件
html_tree = etree.HTML(response.read().decode('utf‐8')
5.html_tree.xpath(xpath路径)
<!--解析.html -->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8"/> <!-- xpath解析严格遵守html规范(标签、单标签要完整)-->
<title>Title</title>
</head>
<body>
<ul>
<li id="l1" class="c1">北京</li>
<li id="l2">上海</li>
<li id="c3">深圳</li>
<li id="c4">武汉</li>
</ul> <!-- <ul>-->
<!-- <li>大连</li>-->
<!-- <li>锦州</li>-->
<!-- <li>沈阳</li>-->
<!-- </ul>-->
</body>
</html>
# _*_ coding : utf-8 _*_
# @Time : 2021/11/2 17:50
# @Author : 秋泊酱
from lxml import etree # xpath解析
# (1)本地文件 etree.parse
# (2)服务器响应的数据 response.read().decode('utf-8') ***** etree.HTML() # xpath解析本地文件
tree = etree.parse('解析_xpath的基本使用.html') # tree.xpath('xpath路径') # 查找ul下面的li
# li_list = tree.xpath('//body/ul/li') # 查找所有有id的属性的li标签
# text()获取标签中的内容
# li_list = tree.xpath('//ul/li[@id]/text()') # 找到id为l1的li标签 注意引号的问题
# li_list = tree.xpath('//ul/li[@id="l1"]/text()') # 查找到id为l1的li标签的class的属性值
# li = tree.xpath('//ul/li[@id="l1"]/@class') # 查询id中包含l的li标签
# li_list = tree.xpath('//ul/li[contains(@id,"l")]/text()') # 查询id的值以l开头的li标签
# li_list = tree.xpath('//ul/li[starts-with(@id,"c")]/text()') # 查询id为l1和class为c1的
# li_list = tree.xpath('//ul/li[@id="l1" and @class="c1"]/text()') li_list = tree.xpath('//ul/li[@id="l1"]/text() | //ul/li[@id="l2"]/text()') # 判断列表的长度
print(li_list)
print(len(li_list))
xpath基本语法:
1.路径查询
  //:查找所有子孙节点,不考虑层级关系
  / :找直接子节点
2.谓词查询
  //div[@id]
  //div[@id="maincontent"]
3.属性查询
  //@class
4.模糊查询
  //div[contains(@id, "he")]
  //div[starts‐with(@id, "he")]
5.内容查询
  //div/h1/text()
6.逻辑运算
  //div[@id="head" and @class="s_down"]
  //title | //price

xpath的chrome插件安装,xpath基本语法的更多相关文章

  1. 【XPath Helper:chrome爬虫网页解析工具 Chrome插件】XPath Helper:chrome爬虫网页解析工具 Chrome插件下载_教程_安装 - 开发者插件 - Chrome插件网

    [XPath Helper:chrome爬虫网页解析工具 Chrome插件]XPath Helper:chrome爬虫网页解析工具 Chrome插件下载_教程_安装 - 开发者插件 - Chrome插 ...

  2. 离线Chrome插件安装文件(crx)的安装方法

    离线Chrome插件安装文件(crx)的安装方法 一.正常安装方法 1.开发谷歌浏览器,设置->扩展程序 在打开的谷歌浏览器的扩展管理器中用户可以看到一些已经安装程序的Chrome插件,或者一个 ...

  3. 解决chrome插件安装时出现的“程序包无效”问题信息:程序包无效。

    https://blog.csdn.net/bluexuemei/article/details/35213117 2014-06-27 09:00:51 bluexuemei 阅读数 14374更多 ...

  4. Chrome 插件安装时报错: "CRX_HEADER_INVALID"

    1. 将 crx 插件后缀名改为 rar 2. 解压 rar 包 3. 进入浏览器 1). 点击Chrome浏览器地址栏最右边的三个点 --> 更多工具 --> 扩展插件 --> 点 ...

  5. Chrome插件安装和用法

    XPath Helper 下载插件,拖入chrome://extensions/ 使用方法:ctrl+shift+x呼出 JSONView的使用: 安装JSONView插件 下载插件,拖入chrome ...

  6. Chrome 插件安装技巧

    参考http://blog.csdn.net/shiyaru1314/article/details/49303317 最近在学习WEBAPI  由于没有界面可以调试,需要安装Chrome中的插件 P ...

  7. Chrome插件安装的3种方法,解决拖放不能安装的情况,并提供插件下载

    本文摘录于Chrome插件网站 方法一:拖放安装 下载插件的crx文件后,打开Chrome的扩展页面(chrome://extensions/或按Chrome菜单图标>更多工具>扩展程序) ...

  8. 解决Chrome插件安装时程序包无效【CRX_HEADER_INVALID】的错误

    将[.crx]后缀的文件拖拽至谷歌浏览器开发者模式下的扩展程序管理页签时,报错[CRX_HEADER_INVALID],即此插件无效的错误. 安装失败的原因 原因在于谷歌浏览器在新版本中添加对第三方插 ...

  9. 解决Chrome插件安装时出现的“程序包无效”问题

    问题原因,新版的插件头部文件的修改,导致旧版的插件包无法使用,解决方式:解压. 1.把下载后的.crx扩展名的离线Chrome插件的文件扩展名改成.zip或者.rar(如果看不到Chrome插件的扩展 ...

随机推荐

  1. Filter和Interceptor

    Filter的使用 拦截user下的所有请求 @WebFilter("/user/*") public class UserFilter implements Filter { @ ...

  2. (一):细说贝叶斯滤波:Bayes filters

    认知计算,还要从贝叶斯滤波的基本思想讲起,本文主要是对<Probabilistic Robotics>中贝叶斯滤波器部分的详细讲解. 这一部分,我们先回顾贝叶斯公式的数学基础,然后再来介绍 ...

  3. 实践node.js构建vue项目

    一.首先安装下载node.js 1.Node.js 官方网站下载:https://nodejs.org/en/,自行选择合适自己的下载安装即可 2.验证安装 打开cmd,输入node  –v和 npm ...

  4. 拥抱开源,共建生态 - 开源生态与效能提升专场 | CIF 精彩看点

    随着软件技术日新月异的发展,GitHub 已经进化成为人类软件的基因库,遇到问题第一时间在 GitHub 上寻求合适的解决方案,已经逐渐变成工程师处理问题的常见方法.据 GitHub 年度报告显示,2 ...

  5. 解决Vite-React项目中js使用jsx语法报错的问题

    背景 在做存量项目接入Vite测试时发现,存量(老)项目中很多是直接在js中书写jsx语法,使用Vite启动时就会抛出一堆问题Failed to parse source. 不嫌麻烦可以跑个脚本批量修 ...

  6. BootstrapBlazor 模板安装

    原文地址:https://www.cnblogs.com/ysmc/p/15400270.html Bootstrap Blazor Project Template 为方便大家的使用,Bootstr ...

  7. AES解密尾部出现乱码问题

    说明 在使用AES解密的时候我发现解密出来的字符串尾部一直都有乱码 解决方案 尾部字符串的ascii码就是删除位索引 具体代码: cryptor = AES.new('AES_KEY'.encode( ...

  8. HTTP标签

    系统的http状态码知识,我是在<图解http里学习的>. 状态码的职责是告知从服务器端返回的请求结果. 分类如下: 2XX --> 成功 200 OK(一般情况) 204 No C ...

  9. tomcat内存马原理解析及实现

    内存马 简介 ​ Webshell内存马,是在内存中写入恶意后门和木马并执行,达到远程控制Web服务器的一类内存马,其瞄准了企业的对外窗口:网站.应用.但传统的Webshell都是基于文件类型的,黑客 ...

  10. 改善深层神经网络-week2编程题(Optimization Methods)

    1. Optimization Methods Gradient descent goes "downhill" on a cost function \(J\). Think o ...