如何使用 Python 进行速卖通商品数据采集

aliexpress 速卖通主图、SKU、属性、详情Python 测试爬取 python测试 request爬取 阅读详情

使用 Python 进行速卖通数据采集主要有官方 API 调用(合规优先)和网页爬虫(补充方案)两种方式,以下是具体实现步骤、代码示例及注意事项:

一、方式一:官方 API 调用(推荐,合规稳定)

速卖通开放平台提供标准化 API 接口,需先完成开发者认证并获取密钥,再通过 Python 发送请求获取结构化数据。

1. 前期准备

  1. 注册开发者账号:访问速卖通,完成企业 / 个人认证,创建应用并获取appKey和appSecret。
  2. 申请接口权限:在开放平台申请目标接口(如商品详情、搜索接口),部分接口需审核。
  3. 了解接口文档:参考速卖通API文档,明确接口参数、签名规则及返回格式。

2. Python 实现 API 调用(以商品详情接口为例)

核心步骤:生成签名 → 构造请求 → 解析响应

python

运行

import requests
import hashlib
import time
import json

# 配置参数(替换为你的实际信息)
APP_KEY = "你的appKey"
APP_SECRET = "你的appSecret"
PRODUCT_ID = "商品ID(如1005006234567890)"
API_METHOD = "aliexpress.item.get"  # 商品详情接口
TIMESTAMP = str(int(time.time() * 1000))  # 毫秒级时间戳

# 1. 构造请求参数(需按字母排序用于签名)
params = {
    "appKey": APP_KEY,
    "method": API_METHOD,
    "productId": PRODUCT_ID,
    "timestamp": TIMESTAMP,
    "format": "json",
    "v": "2.0"
}

# 2. 生成签名(速卖通API签名规则:排序参数拼接+appSecret后MD5加密)
sorted_params = sorted(params.items(), key=lambda x: x[0])
sign_str = "&".join([f"{k}={v}" for k, v in sorted_params]) + APP_SECRET
sign = hashlib.md5(sign_str.encode("utf-8")).hexdigest().upper()
params["sign"] = sign

# 3. 发送POST请求
url = "https://gw.api.alibaba.com/openapi/param2/1/aliexpress.open/api"
response = requests.post(url, data=params)

# 4. 解析响应数据
if response.status_code == 200:
    result = response.json()
    if "error_response" not in result:
        # 提取商品核心信息
        item = result["result"]["product"]
        product_info = {
            "商品ID": item.get("productId"),
            "标题": item.get("subject"),
            "价格": item.get("salePrice"),
            "销量": item.get("tradeCount"),
            "库存": item.get("stock"),
            "好评率": item.get("positiveFeedbackRate"),
            "主图": item.get("imageUrl")
        }
        print(json.dumps(product_info, ensure_ascii=False, indent=2))
    else:
        print(f"API调用失败:{result['error_response']['msg']}")
else:
    print(f"请求失败,状态码:{response.status_code}")

3. 常用 API 接口示例

  • 商品搜索接口:aliexpress.item_search(关键词 / 类目搜索商品列表)
  • 评论接口:aliexpress.product.review.query(获取商品评论)
  • 店铺商品接口:aliexpress.seller.item.list(获取店铺所有商品)

二、方式二:网页爬虫(无 API 权限时使用)

若无法获取 API 权限,可通过 Python 爬虫抓取速卖通网页数据,但需注意反爬机制和合规风险。

1. 静态页面爬取(requests + BeautifulSoup)

适用于简单页面(如商品列表页),需分析网页结构定位元素。

示例:爬取速卖通搜索结果页商品信息

python

运行

import requests
from bs4 import BeautifulSoup
import time

# 配置请求头(模拟浏览器,避免被识别为爬虫)
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
    "Accept-Language": "en-US,en;q=0.9",
    "Referer": "https://www.aliexpress.com/"
}

def crawl_search_results(keyword, page=1):
    url = f"https://www.aliexpress.com/w/wholesale-{keyword}.html?page={page}"
    try:
        # 发送请求(添加延迟,避免频繁请求)
        response = requests.get(url, headers=headers, timeout=10)
        response.encoding = "utf-8"
        soup = BeautifulSoup(response.text, "html.parser")
        
        # 定位商品卡片(需根据网页结构调整Selector)
        products = soup.select(".product-card-item")
        data = []
        for product in products:
            try:
                item = {
                    "标题": product.select_one(".product-title").get_text(strip=True) if product.select_one(".product-title") else None,
                    "价格": product.select_one(".product-price").get_text(strip=True) if product.select_one(".product-price") else None,
                    "销量": product.select_one(".product-sale-count").get_text(strip=True) if product.select_one(".product-sale-count") else None,
                    "商品链接": "https://www.aliexpress.com" + product.select_one("a").get("href") if product.select_one("a") else None
                }
                data.append(item)
            except Exception as e:
                print(f"解析商品失败:{e}")
                continue
        return data
    except Exception as e:
        print(f"请求失败:{e}")
        return []

# 调用示例:爬取“wireless earphones”第1页数据
results = crawl_search_results("wireless earphones", page=1)
for item in results[:5]:  # 打印前5条
    print(item)

2. 动态页面爬取(Selenium/Playwright)

速卖通详情页大量使用 JavaScript 动态加载(如价格、库存、评价),需用自动化工具模拟浏览器渲染。

示例:用 Selenium 爬取商品详情页

python

运行

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time

def crawl_product_detail(product_url):
    # 配置Chrome选项(无头模式,不显示浏览器窗口)
    options = webdriver.ChromeOptions()
    options.add_argument("--headless=new")
    options.add_argument("--no-sandbox")
    options.add_argument("user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36")
    
    driver = webdriver.Chrome(options=options)
    try:
        driver.get(product_url)
        # 等待价格元素加载(最多等待10秒)
        price = WebDriverWait(driver, 10).until(
            EC.presence_of_element_located((By.CSS_SELECTOR, ".product-price-current"))
        ).text
        # 提取其他信息
        title = driver.find_element(By.CSS_SELECTOR, ".product-title-text").text
        sales = driver.find_element(By.CSS_SELECTOR, ".product-reviewer-sold").text
        specs = [spec.text for spec in driver.find_elements(By.CSS_SELECTOR, ".product-specs-item")]
        
        return {
            "标题": title,
            "价格": price,
            "销量": sales,
            "规格": specs
        }
    except Exception as e:
        print(f"爬取详情失败:{e}")
        return None
    finally:
        driver.quit()

# 调用示例(替换为实际商品链接)
product_url = "https://www.aliexpress.com/item/1005006234567890.html"
detail = crawl_product_detail(product_url)
print(detail)

三、数据存储与处理

采集到的数据可存储为 CSV/Excel 或数据库,方便后续分析:

1. 存储为 CSV 文件

python

运行

import csv

# 假设results是采集到的商品列表数据
with open("aliexpress_products.csv", "w", newline="", encoding="utf-8") as f:
    writer = csv.DictWriter(f, fieldnames=["标题", "价格", "销量", "商品链接"])
    writer.writeheader()
    writer.writerows(results)

2. 存储到 MySQL 数据库

python

运行

import pymysql

# 连接数据库(替换为你的配置)
conn = pymysql.connect(
    host="localhost",
    user="root",
    password="your_password",
    database="aliexpress_data"
)
cursor = conn.cursor()

# 创建表(首次运行)
cursor.execute("""
CREATE TABLE IF NOT EXISTS products (
    id INT AUTO_INCREMENT PRIMARY KEY,
    title VARCHAR(500),
    price VARCHAR(50),
    sales VARCHAR(50),
    url VARCHAR(500)
)
""")

# 插入数据
for item in results:
    cursor.execute("""
    INSERT INTO products (title, price, sales, url)
    VALUES (%s, %s, %s, %s)
    """, (item["标题"], item["价格"], item["销量"], item["商品链接"]))

conn.commit()
conn.close()

四、反爬与合规注意事项

  1. API 调用限制:遵守速卖通 API 的调用频率限制(通常 100 次 / 分钟),避免滥用导致账号封禁。
  2. 爬虫反爬策略:
    • 使用代理 IP 池(如阿布云、快代理)避免 IP 被封;
    • 随机 User-Agent、添加请求延迟(1-3 秒 / 次);
    • 避免爬取用户敏感信息(如手机号、邮箱)。
  3. 合规风险:爬虫可能违反速卖通用户协议,仅用于个人学习或内部分析,禁止商用或大规模爬取。
  4. 动态反爬应对:若遇到验证码,可使用第三方打码平台(如超级鹰)或调整爬虫策略。

五、进阶优化

  • 使用 Scrapy 框架:适合大规模爬取,支持分布式、自动重试、数据管道等功能。
  • 异步请求:用aiohttp替代requests,提升爬取效率。
  • 数据清洗:通过正则表达式、文本处理库(如jieba)清洗脏数据,提取关键信息。

通过以上方法,可实现速卖通商品数据的高效采集,优先推荐官方 API 确保合规,爬虫仅作为补充方案。

速卖通商品列表接口(以 AliExpress Affiliate 商品查询 API 为例) 需要注意的是,速卖通的 API 可能会根据业务需求进行调整和更新,使用时请参考官方文档以获取最新的接口信息和使用方法 阅读详情

相关推荐

利用Python爬虫速卖通按关键字搜索AliExpress商品

通过上述步骤,我们成功地使用Python编写了一个简单的爬虫程序,用于从速卖通按关键字搜索商品。这只是一个基础的示例,实际应用中可能需要处理更多的复杂情况,如分页处理、验证码识别、动态加载内容的处理等。希望这个示例能为你的数据采集工作提供一些帮助。

2401_87849308的博客 1037

php 速卖通产品采集,AliExpress(速卖通)关键词搜索结果采集 - 八爪鱼采集器

采集场景在AliExpress(速卖通) 首页中 http://www.aliexpress.com 中输入关键词,采集关键词搜索后得到的商品列表信息。采集字段关键词、标题、商品id、商品图片地址、商品详情链接、价格、免费退送货、星级、已出售数量、店铺名点击查看高清大图,下文其他图片同理采集结果采集结果可导出为Excel、CSV、HTML、数据库等多种格式。导出为Excel示例:教程说明本篇制作时...

weixin_39807067的博客 1914

速卖通 item_get 接口对接全攻略:从入门到精通

速卖通(AliExpress)开放平台的item_get接口是获取商品详情的核心工具,适用于跨境电商分析、多平台比价、选品系统等场景。本文将全面讲解该接口的对接流程、认证机制、代码实现及最佳实践,帮助开发者系统掌握从入门到精通的全流程。

yuweide19761218的博客 695

第二篇:速卖通产品采集系列 之 产品采集实战

上一篇第一篇:速卖通产品采集系列 之 产品采集分析,对速卖通产品采集做了分析,包含要采集产品信息,以及如何采集这些产品信息,这一篇接着来采集实战,相关技术前篇也说过了,不废话直接开项目做。 一, 创建解决方案,编写采集代码 1. 创建解决方案“CollectorSolution”,在其中新建“Collector” 空 ASP.NET MVC 项目,解决方案结构图如下: 2.在“Co...

weixin_30375247的博客 967

速卖通商品信息爬虫实战:完整源码解析

网络爬虫是一种自动化提取网页内容的程序,通常用于搜索引擎索引、数据分析、监测和备份网站数据等用途。它模拟浏览器行为,通过网络协议从互联网上获取数据,然后进行进一步的分析和处理。网络爬虫的技术实现有不同层次,基础的可以通过简单的脚本实现,而复杂的爬虫则涉及大量的数据处理和存储工作。Selenium是一个用于Web应用程序测试的工具。它能够模拟用户操作浏览器,执行自动化任务,如数据抓取、界面验证、功能测试等。

weixin_32661831的博客 2446

速卖通商品数据采集工具实战:Python+requests+parsel从零实现

在跨境电商与电商数据分析场景中,高效获取公开商品数据是选品调研与价格监控的基础。爬虫技术通过模拟HTTP请求与解析HTML/JSON,能够将网页中的结构化信息自动化提取并落库,省去手工复制粘贴的低效流程。基于Python生态中的requests与parsel等轻量库,开发者无需重型浏览器框架即可完成对服务端渲染页面的数据抓取,同时通过请求频率控制、代理轮换与异常重试机制保障采集稳定性。这一技术路径可广泛用于竞品跟踪、行业大盘观察及价格变化趋势研究。本文以速卖通为例,详解了商品列表分页解析、详情页字段提取、C

weixin_32183107的博客 279

【亲测免费】 阿里速卖通产品爬虫项目教程

阿里速卖通产品爬虫项目教程 项目介绍 阿里速卖通产品爬虫(aliexpress-product-scraper)是一个开源项目,旨在帮助用户从阿里速卖通网站上抓取产品信息。该项目使用Python编写,利用了多种网络爬虫技术和库,如requests和BeautifulSoup,以高效地提取和处理网页数据。 项目快速启动 安装依赖 首先,确保你已经安装了Python环境。然后,通过以下命令安装项目所需...

gitblog_00900的博客 1257

速卖通商品信息抓取源码全解析:从列表页到详情页的Python爬虫实践

网络爬虫是数据采集领域的基础技术,通过自动化请求与解析,将网页公开信息转化为结构化数据,为业务决策提供支撑。在电商场景中,利用Python的requests和BeautifulSoup等工具,可高效提取商品标题、价格、销量等核心字段,实现选品分析和竞品监控。本文以速卖通为例,完整梳理了从搜索列表页到详情页的数据抓取链路,涉及商品ID提取、JSON-LD解析、翻页去重及断点续跑,并分享了应对反爬限制的工程经验。通过合理的频率控制和数据清洗,能够有效提升采集稳定性,为跨境电商数据应用提供可靠基础。

weixin_31714129的博客 280

2)速卖通商品信息采集(进阶)

最近好多小伙伴私信我要代码,因为是去年完成的,某通更改了部分结构,导致代码失效,最近花了一点时间,更新了代码! 回顾前景,已经说明某通的数据是js渲染过的,但是也存放在网页源码中,转换成了json格式,我们需要通过正则来提取。 两种思路: 1)selenium;对速度没要求,想方便一点,推荐,直接使用xpath提取数据,但是速度较慢,不适用于爬取量过大 2)request;速度快,爬取量大,就是提取数据的时候比较麻烦,要分析结构 3)逆向就不推荐了,需要懂js,难度较高,有想法可以试着本地加载js渲染数据

fun_sn的博客 4928

用AI+Playwright实现零代码UI自动化测试:以登录页面为例的实战指南

本文详细介绍了如何利用AI与Playwright结合实现零代码UI自动化测试,特别以登录页面为例进行实战演示。通过自然语言描述生成测试脚本,大幅降低技术门槛,提升测试效率,并支持跨浏览器验证。适合非技术人员快速上手专业级自动化测试。

weixin_28842269的博客 403

泛微ecology9二次开发-附件上传-安全实践

本文深入探讨了泛微ecology9二次开发中附件上传功能的安全实践。针对原生接口的安全机制,文章提出了同源部署与服务端代理转发两大核心策略,并提供了基于Vue3和Element Plus的完整前端实现代码,重点解决了会话验证、权限控制及文件关联等关键安全问题,确保二次开发应用能安全、稳定地与ecology9系统集成。

qsc9012345的博客 533

Python 进行速卖通商品数据采集(验证码解决)

AliExpress,速卖通,AliExpress采集,速卖通采集,AliExpress验证码破解,AliExpress验证码逆向,速卖通验证码破解,速卖通协议采集

weixin_47202080的博客 144

从零开始用TS开发babylonjs - 本机环境搭建

babylonjs,初始化本地安装,web3d引擎

han3527638的专栏 795

速卖通商品数据采集案例分析:API 合规高效接入

速卖通 API 是跨境电商运营的 "数字基础设施",合规、高效地利用它,不仅能提升运营效率,还能挖掘数据价值,为业务增长提供强大支撑。建议定期关注速卖通开放平台更新,及时应用新功能,持续优化数据采集策略

API15579030501的博客 720

abaqus热力耦合模拟教程学习笔记

学习资源:BV1je4y1a7Ku软件:abaqus2016以m为单位制。

qq_41900477的博客 2万+

Word公式一键转MathType保姆级教程(附omml2mml.xsl报错终极解决方案)

本文提供Word公式一键转MathType的保姆级教程,重点解决常见的omml2mml.xsl报错问题。通过详细分析报错原因、官方解决方案实操步骤及转换后格式优化技巧,帮助用户高效完成公式转换,适用于科研论文和商业文档编辑。

weixin_30082367的博客 555

利用速卖通 API 实现商品详情实时数据采集(开发接入示例)​

在开始开发之前,认真阅读与商品详情获取相关的 API 文档,了解 product/detail/get 等接口的使用方法,明确所需传入的参数以及预期的返回数据格式,为后续的代码编写做好准备。根据实际需求,你还可以进一步扩展代码功能,如批量获取商品数据、将数据存储到数据库中等,为跨境电商业务的数据分析和决策提供有力支持。登录速卖通会为你分配 ApiKey 和 ApiSecret,这两个密钥至关重要,在后续 API 请求中用于身份验证和签名生成,务必妥善保管,不要泄露。2.2 编写代码实现 API 请求​。

2301_78159247的博客 1447

OpenClaw 从新手到中级完整教程【完整 持续更新版】

OpenClaw(曾用名 ClawdBot/Moltbot)是 2026 年最火的开源 AI Agent 项目,GitHub 已获得超过 68,000 星标。它不是普通的聊天机器人,而是一个真正能够执行任务的个人 AI 助理。

FeelTouch Labs 3115

实战:获取速卖通AliExpress商品详情API接口(item_get)完全指南

速卖通提供了官方商品详情API接口基础信息:商品标题、价格、库存、主图URLSKU属性:规格参数、属性图、价格阶梯物流模板:运费、配送时效、海外仓信息营销数据:促销标签、历史价格、评价统计原始数据:带HTML标签的商品描述、隐藏关键词等通过速卖通item_get接口,开发者可构建强大的商品数据采集系统。本文提供的签名算法、异常处理、缓存策略等实战代码可直接应用于生产环境。建议优先使用官方新加坡节点(),延迟更低且稳定性更高。重要提醒。

APIshop的博客 1526

出现 has been blocked by CORS policy: No ‘Access-Control-Allow-Origin‘ header is present on the 解决方法

Access to XMLHttpRequest at 'http://127.0.0.1:5000/api/data' from origin 'http://10.197.0.79:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

码农研究僧的博客 1万+

TI Sitara系列AM64x开发板(双核ARM Cortex-A53)软硬件规格书

创龙科技TL64x-EVM是一款基于TI Sitara系列AM64x双核ARM Cortex-A53 + 单/四核Cortex-R5F + 单核Cortex-M4F多核处理器设计的高性能评估板,由核心板和评估底板组成。评估板接口资源丰富,引出5x Ethernet(两路支持TSN)、2x CAN-FD、多路UART、多路DI/DO、GPMC、PCIe、USB等接口,板载WIFI模块,支持4G/5G模块、NVME硬盘,可选配外壳直接应用于工业现场,方便用户快速进行产品方案评估与技术预研。

创龙,嵌入式一体化解决方案商 727

跨境电商速卖通(AliExpress)数据采集与 API 接口接入全方案

速卖通数据采集优先选择开放平台 API(稳定、合规、数据完整),爬虫仅作为临时补充方案;核心需解决多站点 / 多币种适配、签名认证、运费模板解析三大问题,同时严格控制调用频率,确保符合平台规则。若需对接速卖通订单、库存等更深层数据,可进一步申请高级接口权限,并完善数据加密、日志监控体系。

API15579030501的博客 1809

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

速卖通数据采集:API 接口全攻略

注册企业开发者账号,创建应用获取 App Key 和 App Secret 从商品详情和搜索接口入手,熟悉基本调用流程 根据业务需求选择其他接口 (订单、物流等),构建完整数据链路 实现数据清洗、存储和分析功能,将原始数据转化为商业洞察

API15579030501的博客 1393

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

开发速卖通商品详情 API 采集工具:实时数据接入与代码演示

速卖通(AliExpress)为开发者提供了一套完整的API,允许第三方应用程序访问其平台上的商品、订单、物流等数据。注册成为速卖通开发者创建应用并获取 ApiKey 和 ApiSecret申请相应的 API 权限获取访问令牌(Access Token)

2301_78671173的博客 416

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

跨境电商 API 对接指南:亚马逊 + 速卖通接口调用全流程

本文详细介绍了跨境电商业务中对接亚马逊SP-API和速卖通开放平台API的全流程。主要内容包括:1)亚马逊SP-API的OAuth2.0授权流程、AWS4签名实现和订单查询接口调用;2)速卖通API的HMAC-SHA1签名机制和商品查询接口实现;3)整合两大平台API的统一封装方案。文章提供了完整的Python代码示例,涵盖开发者账号准备、签名算法实现、接口调用等关键环节,并给出了权限申请、请求频率控制等优化建议,为跨境电商系统开发提供实用参考。

API15579030501的博客 1458

速卖通商品详情数据 API 接口全解——注册、签名、Python 调用到落库一条龙

关键词:AliExpress、aliexpress.item.get、官方 OpenAPI、跨境电商、Python 示例、合规限速适用:比价 SaaS、ERP 选品、数据分析、第三方金融评估。

2401_87966921的博客 2435
上一篇: 各电商数据平台商品数据采集全攻略【电商数据采集API】
下一篇: 【电商数据采集API接口】数据采集中的6点关键因素
电商API&Tina
博客等级 码龄1年 62粉丝 240原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值