学习XPath助力爬取中秋各大电商平台数据

简介: 学习XPath助力爬取中秋各大电商平台数据

目录


  1. XPath是什么?
  2. 浏览器插件: XPath Helper
  3. XPath节点
  4. XPath语法
  5. XPath运算符
  6. 实战案例


XPath是什么?


  1. XPath是一门在XML文档中查找信息的语言。
  2. XPath提供的路径表达式方便我们在XML文档中选取节点或节点集合。
  3. XPath提供了大量的标准函数,如:处理字符串,数值,日期,时间,节点,逻辑关系等。
  4. XPath符合W3C标准。


浏览器插件: XPath Helper


我们通过浏览器插件来验证我们的写XPath语句是否成功更为方便。

  1. 在Chrome浏览器的商店搜索XPath Helper并添加。

1.png

  1. 打开目标网站后点击我们的插件图标呼出操作栏
  1. 操作栏左侧为XPath语句
  2. 操作栏右侧为匹配结果

2.png


XPath节点


对于XPath来说也是包含了节点,值,节点间的关系三部分。节点有元素,属性,文本,命名空间,指令,注释和根节点7类,节点间的关系有父子关系,兄弟关系,先辈关系,后代关系。


XPath语法


// 案例演示使用
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <div>
        <h3 style="font-weight: 500;">Hello XPath 1</h3>
        <h3 style="font-weight: 600;">Hello XPath 2</h3>
        <h3 style="font-weight: 600;">Hello XPath 3</h3>
    </div>
</body>
</html>

选取节点:
  1. 选取文档所有节点:Root node name
  2. 从根节点选取:/
  3. 从任意位置选择://
  4. 选取当前节点:.
  5. 选取当前节点的父节点:..
  6. 选取属性: @
  7. 案例:
  1. 选取根元素:/html
  2. 从根元素开始选取div下的所有子元素:/html/body/div
  3. 从根元素开始选取div下的所有h3元素:/html/body/div//h3
  4. 从任意位置选取h3元素://h3
  5. 从任意位置选取style属性://@style

谓语:

缩小节点的选取到指定位置

  1. 选取div下第一个h3:/html/body/div/h3[1]
  2. 选取div下最后一个h3:/html/body/div/h3[last()]
  3. 选取div下倒数第二个h3:/html/body/div/h3[last()-1]
  4. 选取div下前两个h3:/html/body/div/h3[position()<3]
  5. 选取所有带style属性的h3:/html/body/div/h3[@style]
  6. 选取所有带style属性且值为600磅的h3:/html/body/div/h3[@style="font-weight: 600;"]
  7. 选取title元素和div下的所有子元素:/html/head/title | /html/body/div

选取未知节点:
  1. 匹配未知元素:*
  2. 匹配未知属性:@*
  3. 匹配任何类型的节点:node()


XPath运算符


图表来源:www.runoob.com/xpath/xpath…

运算符 描述
+ 加法
- 减法
* 乘法
div 除法
= 等于
!= 不等于
< 小于
<= 小于或等于
> 大于
>= 大于或等于
or
and
mod 计算除法的余数


利用中秋各大电商平台页面实战


目标:
  1. 获取搜索到的第一件商品的信息。
  2. 获取搜索到的前三件商品的信息。
  3. 获取搜索到的最后一件商品的信息。
  4. 获取搜索到的价格大于200元的商品信息。


淘宝平台实战:


s.taobao.com/search?q=中秋月饼


商品各字段匹配:
  1. 匹配商品名称:

//div[@data-category="auctions"]/div[2]/div[2]/a 2. 匹配价格://div[@data-category="auctions"]/div[2]//div[@class="price g_price g_price-highlight"]/strong 3. 付款人数://div[@data-category="auctions"]/div[2]/div[1]/div[2] 4. 匹配封面://div[@data-category="auctions"]/div[1]//img/@src

匹配搜索到的第一个商品:
//div[@data-category="auctions"][1]

3.png

匹配搜索到的前三个商品:
//div[@data-category="auctions"][position()<=3]

4.png

匹配搜索到的最后一个商品:
//div[@data-category="auctions"][last()]

5.png

//div[@class="price g_price g_price-highlight"][strong>200]/../../..

6.png


备注:我们也可以通过浏览器的开发者工具来直接获得XPath后再手工调整来节省时间,如下图所示。

  1. Copy XPath://*[@id="bd672fe6-3dd0-475e-96db-4b0fe71f72eb"]/div[2]/div/div[1]/div/div/div/div[1]/a
  2. Copy full XPath:/html/body/div/div/section/section/main/div[2]/div/div/div[2]/div/div[1]/div/div/div/div[1]/a

7.png


结语


通过浏览器的开发者工具我们可以看到选取节点的方式有selector,JSPath等,选择自己习惯用的就可以了,熟练的选取元素节点为你的爬虫添砖加瓦吧~~~



相关文章
|
13天前
|
算法 UED
如何利用体育直播平台进行内容变现
随着互联网的发展,体育赛事的商业化日益多元化,成为推动体育行业发展的关键动力。熊猫比分体育赛事直播平台凭借精准的商业模式和运营策略,在行业中脱颖而出。其直播运营、私域变现和专家推荐等功能,不仅提升了用户体验,还实现了高效变现。通过熊猫比分提供的成熟源码,搭建和运营效率显著提高,助力平台在体育市场中占据一席之地。
|
4月前
|
小程序 前端开发 JavaScript
【电商新机遇】支付宝小程序如何助你打造爆款电商解决方案?揭秘背后的技术奥秘!
【8月更文挑战第27天】本文详细介绍如何利用支付宝小程序构建电商应用,覆盖从项目初始化、页面设计、功能开发到数据分析的全流程。首先,需注册开发者账号并安装相关工具;随后创建项目,并按示例配置基本页面结构;接着设计商品列表等界面布局;再实现商品展示等功能;最后运用支付宝提供的工具进行数据分析,以优化用户体验及营销策略。跟随本教程,您将能打造出一款完整的电商小程序。
101 1
|
4月前
|
数据采集 数据可视化 搜索推荐
Python爬虫技术从去哪儿网获取旅游数据,对攻略进行可视化分析,提供全面的旅游攻略和个性化的出行建议
本文利用Python爬虫技术从去哪儿网获取旅游数据,通过数据处理和可视化分析,提供了全面的旅游攻略和个性化出行建议,同时探讨了热门目的地、出游方式、时间段以及玩法的偏好,为旅游行业和游客提供了有价值的参考信息。
294 9
|
7月前
小马识途定制网络口碑营销解决方案
小马识途定制网络口碑营销解决方案
|
7月前
|
运维 API 数据安全/隐私保护
京东JDAPI:电商行业的得力助手
在当今电商行业中,数据的获取与利用显得尤为重要。作为中国领先的电商平台,京东提供了丰富的API接口,其中JD商品详情API是关键之一,它允许第三方开发者获取京东平台上的商品详情信息。本文将深入探讨京东JD商品详情API在电商行业中的重要性,以及如何通过该API实现实时数据获取。
|
双11 UED
《双十一电商行业 网站用户体验报告》电子版地址
电商行业的关注点逐渐从追求增长速度转向关注更加顺畅的用户体验与更加优质的服务质量。面对全球化营销以及大促带来的流量浪涌,如何应对散布在全球不同地区与国家的海量用户,及时发现流量激增带来的用户体验与性能问题,成为每个电商乃至众多互联网企业需要关心的重点。
106 0
《双十一电商行业 网站用户体验报告》电子版地址
|
机器学习/深度学习 自然语言处理 达摩院
【云栖号案例 | 金融】开放搜索助力提升趣店商城20%转化率
趣店伴随着业务量的快速增长,对搜索技术的要求越来越高。上云后商品交易额增长、订单转化提升等给用户带来了良好的搜索体验,拉动GMV的提升。
【云栖号案例 | 金融】开放搜索助力提升趣店商城20%转化率
|
新零售 搜索推荐 SEO
某知名电商网站营销总监教你如何做[伪原创]内容,搞网络推广的必看!!!
这是一篇关于伪原创写作的帖子,写这个并不是鼓励大家去抄改编,只是教大家如何利用别人的资源,以掘取到更多的资源。在网络中,最重要的部分无疑是内容,网站只是一种内容的体现。内容为王总是对的。但这不是说你能写出原创的内容,就能在网络上称王称霸了。
1235 0
|
Web App开发 前端开发
淘宝、拼多多、小红书,很多知名的企业都是从一个网站开始的
网站是企业了解线上用户数据的一个方向,可以通过分析网站数据了解其潜在客户在哪里?然后再定向的投放市场广告,这样可以达到事半功倍的效果。

热门文章

最新文章