影刀RPA实操指南_淘宝天猫商品数据自动化采集

影刀RPA实操指南:淘宝天猫商品数据自动化采集完整流程

淘宝天猫和拼多多最大的区别:它有评价体系、有SKU、有双价格(原价和券后价),而且很多数据需要登录后才能看。

这篇文章不是泛泛讲采集,而是聚焦淘宝天猫特有的坑和解决方案。前提是你已经掌握了基础的元素捕获和循环逻辑。


一、淘宝登录的特殊性

淘宝的登录比拼多多严格。短信验证、滑块验证出现的频率高很多。

建议策略

不要每次都重新登录。淘宝的Cookie有效期比较长(大概15~30天),保存Cookie复用,比次次登录靠谱得多。

python 复制代码
# 淘宝登录态检测的特征元素
# 已登录 → 页面顶部有"你好,xxx"或"我的淘宝"
# 未登录 → 显示"请登录"

判断元素是否存在("已登录用户名") -> 登录状态
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/c95a5c5474154f6c82dbf9926b4b31e0.png#pic_center)


如果不满足 登录状态:
    调用子流程("A_淘宝登录")

淘宝登录的元素要注意:它的登录框可能是iframe嵌套的,记得先切换框架。


二、搜索入口与URL结构

拼多多店群自动化报活动上架!

淘宝搜索页的URL有固定规律:

复制代码
# 基础搜索
https://s.taobao.com/search?q=连衣裙

# 加筛选条件
https://s.taobao.com/search?q=连衣裙&sort=sale-desc  (按销量排序)
https://s.taobao.com/search?q=连衣裙&filter=price-0-100 (价格筛选)
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/f49887e3be2444c499a3241e6e906d03.png#pic_center)


# 天猫搜索
https://list.tmall.com/search_product.htm?q=连衣裙

可以直接拼接URL跳页,省去点击筛选按钮的步骤:

python 复制代码
关键词 = "连衣裙"
页数 = 3

URL = f"https://s.taobao.com/search?q={关键词}&s={(页数-1)*44}"  # 淘宝每页44条

打开网页(URL)

淘宝的翻页参数是 s(offset),每页44条商品。第1页 s=0,第2页 s=44,依此类推。


三、价格提取的坑

淘宝价格不仅是一个数字,还有各种形式:

复制代码
¥128.00           ← 正常
¥99.00 ¥199.00   ← 券后价和原价
¥128-168          ← 价格区间(多SKU)
2件9折            ← 活动价

清洗逻辑

python 复制代码
import re

def parse_taobao_price(price_text):
    """把各种淘宝价格格式统一成最小价格"""
    if not price_text:
        return 0.0
    
    price_text = price_text.strip()
    
    # 去掉¥符号和其他非数字字符
    price_text = price_text.replace("¥", "").replace(" ", "")
    
    # 处理"¥128-168"这种价格区间,取最小值
    if "-" in price_text:
        parts = price_text.split("-")
        nums = []
        for p in parts:
            found = re.findall(r'\d+\.?\d*', p)
            if found:
                nums.append(float(found[0]))
        return min(nums) if nums else 0.0
    
    # 处理"¥99.00 ¥199.00"这种双价格,取第一个(券后价)
    nums = re.findall(r'\d+\.?\d*', price_text)
    if nums:
        return float(nums[0])
    return 0.0

# 使用
原始价格 = get_element_text("price")
清洗后价格 = parse_taobao_price(原始价格)

四、评价数据的获取

淘宝的评价数和商品列表页显示的不完全一致。列表页显示的是"收货人数"(已付款且确认收货),跟实际评价数有差异。

如果需要精确数据,进商品详情页的"累计评价"标签:

python 复制代码
# 打开商品详情页
打开网页(商品链接)

# 找"累计评价"标签
# XPath: //a[contains(text(),'累计评价')]

判断元素是否存在("累计评价标签"):
    点击元素("累计评价标签")
    固定等待(2秒)
    
    # 评价页可能有分页,也需要翻页处理
    采集评价内容()

五、天猫与淘宝的差异

特性 淘宝店铺 天猫店铺
店铺类型 C店 B店(品牌旗舰店)
搜索域名 s.taobao.com list.tmall.com
商品ID格式 纯数字长ID 数字ID
页面结构 相对简单 活动模块更多,DOM更复杂
价格字段 price class 可能嵌套在活动div里

天猫页面比淘宝多了很多营销模块(预热、预售、品牌专区),元素捕获时要更小心------同样的"价格"元素,可能出现在多个嵌套的div里。

建议用精确的XPath定位:

复制代码
# 避开活动模块,直取核心价格
//div[@class='product']//span[contains(@class,'price')]

TEMU店群矩阵自动化运营核价报活动

六、SKU信息的提取

淘宝和天猫的商品经常有多SKU(颜色/尺码)。列表页一般不展示完整的SKU,需要进详情页。

详情页的SKU区域可以用相似元素列表提取:

python 复制代码
# 遍历SKU选项
获取相似元素列表("SKU颜色选项") -> 颜色列表

![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/3741dad87d934ccda424bfdf40fef852.png#pic_center)

# XPath参考://li[contains(@class,'sku-line')]//span

不过这种操作在自动化里不太实用------点每个SKU就会触发页面变化(价格变动、库存变动),而且操作太频繁容易触发风控。

实际建议:如果只是做市场调研,用列表页的数据就够了(价格范围、销量区间)。需要精确SKU数据的场景,考虑用淘宝开放平台的API,而不是页面爬取。


七、防限流策略(淘宝特有)

淘宝的反爬比一般电商平台更成熟。

python 复制代码
# 策略1:页面停留时间随机化
固定等待(2 + random.random() * 3)  # 2~5秒随机

# 策略2:搜索间隔
每采集完一页:
    固定等待(5 + random.random() * 5)  # 5~10秒休息

# 策略3:分时段
# 不要在短时间内大量请求
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/de3ffcf92a954a6e910a78980f417bd5.png#pic_center)

# 每采集10页停5分钟

# 策略4:检测验证码
判断元素是否存在("验证码或滑块") -> 需要验证
如果 需要验证:
    输出日志("遇到风控,暂停30分钟")
    固定等待(1800秒)  # 30分钟

淘宝遇到风控后,IP可能会被限制一段时间。不要硬刚。


八、完整采集流程

python 复制代码
# 淘宝关键词 → 商品列表采集
关键词列表 = ["连衣裙", "T恤男", "运动鞋女"]

遍历列表(关键词列表, 关键词):
    输出日志(f"开始采集: {关键词}")
    商品数据 = []
    
    # 采集前5页
    遍历范围(0, 5, 页数):
        offset = 页数 * 44
        URL = f"https://s.taobao.com/search?q={关键词}&s={offset}"
        打开网页(URL)
        固定等待(3秒)
        
        # 获取商品列表
        获取相似元素列表("商品卡片") -> 商品列表
        
        遍历列表(商品列表, 卡片):
            名称 = 获取元素文本(卡片 // 名称元素)
            价格原始 = 获取元素文本(卡片 // 价格元素)
            价格 = parse_taobao_price(价格原始)
            销量原始 = 获取元素文本(卡片 // 销量元素)
            店铺 = 获取元素文本(卡片 // 店铺元素)
            
            商品数据.append({
                "关键词": 关键词,
                "商品名称": 名称,
                "价格": 价格,
                "销量文本": 销量原始,
                "店铺名": 店铺,
                "页码": 页数 + 1
            })
        
        输出日志(f"第{页数+1}页完成,共{len(商品数据)}条")
        
        # 页间休息
        固定等待(5秒)
    
    # 保存
    保存到Excel(商品数据, f"D:\\数据\\淘宝_{关键词}_{date}.xlsx")

作者:林焱


本文为《影刀RPA学习手册》系列文章之一,内容源于实操经验的整理与分享。

相关推荐
linyanRPA5 小时前
影刀RPA完全指南_流程备份与迁移完整操作
效率工具·浏览器自动化·影刀rpa·拼多多运营工具·爬虫自动化·提效神器·店群自动化运营
linyanRPA5 小时前
影刀RPA实操指南_小红书笔记批量采集完整流程
效率工具·自动化脚本·电商运营·rpa自动化·爬虫自动化·店群自动化·店群自动化运营
linyanRPA6 小时前
影刀RPA实操指南_京东商品数据自动化采集
电商运营·rpa自动化·拼多多运营工具·爬虫自动化·店群自动化·提效神器·店群自动化运营
linyanRPA9 小时前
影刀RPA完全指南_非技术人员学习自动化的心智模型
效率工具·浏览器自动化·自动化脚本·电商自动化·拼多多运营工具·爬虫自动化·店群自动化运营
linyanRPA18 小时前
影刀RPA店群自动化实战:多店铺活动自动报名与促销管理架构设计
运维·自动化·办公自动化·rpa·python脚本·爬虫自动化·店群自动化
Solo社区20 小时前
不做通用AI助手,先做好一个垂直Agent
agent·ai助手·独立开发者
linyanRPA21 小时前
影刀RPA店群自动化实战:多店铺商品批量类目迁移与属性映射系统设计
办公自动化·效率工具·python脚本·浏览器自动化·rpa自动化·电商自动化·店群自动化
linyanRPA1 天前
影刀RPA店群自动化实战:多店铺统一售后工作台与自动仲裁系统设计
python脚本·电商运营·影刀rpa·rpa自动化·拼多多运营工具·爬虫自动化·店群自动化运营
linyanRPA1 天前
影刀RPA多店铺绩效报表与经营分析自动化实战:数据驱动运营决策
办公自动化·效率工具·ai助手·影刀rpa·rpa自动化·电商自动化·店群自动化运营