Xpath安装及使用

简介: Xpath安装及使用

1、xpath

1.1、xpath环境

浏览器下载xpath插件

chrome插件下载

提取码:5iex

python安装lxml库

pip install lxml -i https://pypi.douban.com/simple

1.2、xpath使用

1.etree.parse() 解析本地文件

html_tree = etree.parse(‘xxx.html’)


2.etree.HTML() 服务器响应文件

html_tree = etree.HTML(response.read().decode(‘utf-8’))


3.html_tree.xpath(xpath路径)


4.路径获取

鼠标右键查看网页源代码

快捷键 Ctrl + Shift + x 打开xpath工具

在Query框输入路径,在Result中显示定位的值


1.3、xpath基本语法

1.路径查询

//:查询所有子孙节点,不考虑层级关系

/:找直接子节点

2.谓词查询

//div[@id]

//div[@id=“maincontent”]

3.属性查询

//@class

4.模糊查询

//div[contains(@id,“he”)]

//div[start-with(@id,“he”)]

5.内容查询

//div/h1/text()

6.逻辑运算

//div[@id=“head” and @class=“s_down”]

//title | //price

1.4、应用实例:爬取站长素材图片

import urllib.request
from lxml import etree
def create_request(page):
   if (page == 1):
      url = 'https://sc.chinaz.com/tupian/meinvtupian.html'
   else:
      url = 'https://sc.chinaz.com/tupian/meinvtupian_' + str(page) + '.html'
   headers = {
      'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36'
   }
   request = urllib.request.Request(url=url,headers=headers)
   return request
def get_content(request):
   response = urllib.request.urlopen(request)
   content = response.read().decode('utf-8')
   return content
def down_load(content):
   # 解析网页源码
   tree = etree.HTML(content)
   name_list = tree.xpath('//div[@id="container"]//a/img/@alt')
   src_list = tree.xpath('//div[@id="container"]//a/img/@src')
   # 下载图片到本地
   for i in range(len(name_list)):
      name = name_list[i]
       src = src_list[i]
       url = 'https:' + src
       urllib.request.urlretrieve(url=url,filename='./images/'+name+'.jpg')
if __name__ == '__main__':
   start_page = int(input("请输入起始页码:"))
   end_page = int(input("请输入结束页码:"))
   for page in range(start_page, end_page + 1):
        request = create_request(page)
        content = get_content(request)
        down_load(content)

2、jsonpath

文章推荐:https://blog.csdn.net/luxideyao/article/details/77802389

3、bs4

无

相关文章
|
7月前
|
数据采集 存储 数据可视化
Python 爬虫:拍卖网站列表页与详情页数据联动爬取
Python 爬虫:拍卖网站列表页与详情页数据联动爬取
|
7月前
|
人工智能 安全 数据可视化
Windows 全版本 OpenClaw 搭建教程 零代码可视化一键部署
OpenClaw(小龙虾)是2026年热门开源AI自动化工具,支持Win10/11本地离线运行。零代码、全图形化、内置依赖、多模型切换、大Token额度,5–10分钟一键部署。数据不出设备,安全可控,适配办公全场景。(239字)
607 1
|
12月前
|
人工智能 自然语言处理 搜索推荐
2025年AI Agent客服机器人深度测评:五款主流厂商对话流畅度、理解能力横向测评
2025年AI Agent客服进入“元年”,企业选型从简单问答转向深度理解与流畅交互。本文构建四大测评维度,横向对比五款主流产品,揭示AI客服向“可执行任务的AI员工”演进趋势,助力企业智能转型决策。
|
运维 安全 定位技术
PTP/GPTP主时钟服务器的应用​
在数字化时代,高精度时间同步对金融、工业自动化和电力系统等行业至关重要。"同步天下"旗下SYN2413型PTP时钟服务器(旗舰版)基于先进PTP技术,实现亚微秒级同步精度,支持多源时间参考和灵活网络架构,配备丰富接口。实际应用中,它帮助金融平台提升交易稳定性、优化汽车制造车间协同工作降低次品率,并提高智能电网故障处理效率,展现卓越性能与专业实力,助力行业数字化转型与创新。
|
机器学习/深度学习 编解码 算法
【图像处理】图像的边缘检测(Matlab代码实现)
【图像处理】图像的边缘检测(Matlab代码实现)
544 1
|
监控 安全 数据挖掘
淘宝/天猫:使用优惠券发放API设计满减活动,刺激消费欲望
本文介绍如何利用淘宝/天猫优惠券发放API设计满减活动,通过动态发放、自定义规则提升转化率与客单价。结合行为经济学原理,详解满减逻辑、消费刺激机制,并提供Python代码示例,助力商家自动化营销,实现GMV增长。(238字)
|
存储 人工智能 前端开发
2025年解析 AI 编程:当前水平与对程序员的影响-优雅草卓伊凡
2025年解析 AI 编程:当前水平与对程序员的影响-优雅草卓伊凡
528 8
2025年解析 AI 编程:当前水平与对程序员的影响-优雅草卓伊凡
|
存储 缓存 安全
Go语言实战案例-LRU缓存机制模拟
本文介绍了使用Go语言实现LRU缓存机制的方法。LRU(最近最少使用)是一种常见缓存淘汰策略,当缓存满时,优先删除最近最少使用的数据。实现中使用哈希表和双向链表结合的方式,确保Get和Put操作均在O(1)时间内完成。适用于Web缓存、数据库查询优化等场景。
|
存储 缓存 算法
《WebGL打造高性能3D粒子特效系统:从0到1的技术探秘》
本文围绕WebGL构建高性能3D粒子特效系统展开技术探秘。首先介绍WebGL渲染管线的核心机制,阐述从顶点数据处理到光栅化呈现的完整流程;接着讲解数据结构设计的重要性,包括结构数组(SoA)和粒子池的应用;然后说明物理模拟如何赋予粒子自然运动效果,涉及重力、风力、碰撞等模拟方式;还探讨了光影效果与材质渲染的实现,以及性能优化的关键策略,如减少绘制调用、视锥体剔除、资源缓存等。通过这些技术细节与优化技巧,为游戏、可视化项目等打造出流畅且富视觉冲击力的3D粒子特效提供了全面参考。
533 0