网址:https://deyunsp.tmall.com/category.htm?spm=a1z10.1-b.w5001-14278955949.3.dwiDX4&search=y&scene=taobao_shop
问题:要采集网页里头的奶粉产品信息(price、name、sale-num、comment-num),如图所示,本店推荐的奶粉产品的class和上面列表产品的class是一样的,所以无法进行区分,我要怎么做才能只采集列表产品(不包括推荐的产品)。

尝试对抓取的内容做自定义xpath,选择专有定位,例如:

price
内容表达式:.//*[contains(@class,'c-price')]/text()
定位表达式:*[@class='pagination']/preceding-sibling::*[contains(@class,'item')]/dl
在XPATH搜索框能够相应找到,但是,测试结果只有第一个奶粉的产品信息,why?
数据规则如下:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
举报 使用道具
| 回复

共 2 个关于本帖的回复 最后回复于 2016-9-1 22:42

沙发
xandy 论坛元老 发表于 2016-9-1 18:04:15 | 只看该作者
规则名:JD_shop
举报 使用道具
板凳
Fuller 管理员 发表于 2016-9-1 22:42:32 | 只看该作者
这个网页稍微有些麻烦,看下图


在DOM上所有商品都在同一级,而且他们的class也完全一样,用普通的内容映射或者定位标志映射都很难分开。


中间两个DIV分别是翻页区和“本店内推荐”标题,可以利用他们进行区分。


我想到的是直接修改抓取规则。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
举报 使用道具
您需要登录后才可以回帖 登录 | 立即注册

精彩推荐

  • 为BERTopic安装需要的预训练SBERT模型
  • 在什么情况下使用弹窗模式和回退功能?
  • 爬网址做层级采集——以当当商品爬虫为例
  • 网络爬虫采集列表数据
  • UMAP的min_dist参数有什么作用?

热门用户

GMT+8, 2026-8-8 22:55