一、跨境电商数据的作用

跨境电商数据贯穿选品、运营、营销、供应链、风控全业务链路,是企业洞察海外市场、降低试错成本、提升经营效益的核心依据。

1.1 市场与选品决策

通过市场容量、搜索热度、竞品销量、用户偏好等数据,判断不同国家地区消费需求,挖掘潜力品类,规避红海赛道,辅助确定产品款式、规格、配色,减少盲目备货,提升选品成功率。

1.2 精细化店铺运营

依托流量、点击率、转化率、客单价、复购率等店铺数据,诊断 Listing 标题、主图、详情页的短板;监控订单、询盘、评价数据,及时优化产品页面、调整定价策略,改善客户体验,提升店铺权重与订单转化。

1.3 营销投放优化

分析广告曝光、点击、花费、投产比数据,筛选高转化关键词与投放渠道,关停低效投放,合理分配广告预算;结合海外用户画像,精准定位目标人群,提升推广效率,降低获客成本。

1.4 供应链与库存管理

结合历史销量、季节波动、节日大促预测销量,指导采购、生产与海外仓备货,合理设置安全库存,避免库存积压或缺货断货;同时分析物流时效、丢件率、物流成本数据,优选物流方案,压缩履约成本。

1.5 风险预警与合规管控

监控平台规则变动、竞品违规、差评投诉、退货率数据,提前识别侵权、产品纠纷、账号降权风险;结合各国关税、退换货数据,优化报关、售后方案,降低账号封禁与经营损失。

1.6 业务复盘与战略规划

汇总不同站点、品类的营收、毛利、回款数据,评估各板块盈利水平,识别优势市场与亏损业务,为站点扩张、业务收缩、长期业务战略调整提供量化支撑。

二、爬取目标

本次的爬取目标是Lazada电商平台输入关键词后的全部商品信息列表,并且进行翻页:

在这里插入图片描述

三、环境准备

Python:3.10

编辑器:PyCharm

第三方模块,自行安装:

pip install requests # 网页数据爬取

pip install pandas # 数据处理

四、代理IP获取

4.1 为什么爬虫要用代理IP?

1、爬虫使用代理IP主要是为了避免因频繁访问同一网站而被识别并封禁真实IP,同时代理IP还能帮助绕过地域限制,提高数据采集的效率和成功率。

2、由于跨境电商数据量大,想要成功获取到数据就比必须要使用到代理IP。

4.2 代理IP怎么选?

选择代理 IP,优先结合跨境电商业务场景,重点看IP 纯净度、地域覆盖、稳定性、并发与指纹环境、服务商合规性。优先选用住宅代理,避免机房 IP,防止账号关联;目标站点要和 IP 归属地精准匹配,保障访问地区真实环境;关注连通率、响应延迟,支持多账号隔离,做好指纹隔离;同时考察服务商的带宽、并发上限、售后及风控能力,拒绝廉价劣质池,降低店铺封号、IP 被拦截风险,按需选择按量计费或包量模式,平衡成本与业务安全。

4.3 代理IP推荐

经常有写爬虫的粉丝跑来问我有没有比较靠谱的代理IP可以推荐一下?

巨量IP是国内TOP级的代理IP服务提供商,专注于为企业及开发者提供稳定、安全、高效的IP资源解决方案。凭借覆盖全国400+地区节点、7000万日活跃IP池、行业顶尖技术团队及超高性价比套餐,致力于满足多场景业务需求,助力企业降本增效。注册免费试用(巨量IP

我体验下来的感受有几点:

  1. 稳定性高,代理质量高

  2. 响应速度快

  3. IP种类齐全:不限量、按量计费、包时、隧道代理、独享IP、共享长效

  4. 价格实惠,最低单0.0002元

在这里插入图片描述

最重要的还是注册免费领取1000IP代理! 觉得好用再购买即可

4.4 利用代码获取IP

在博主的提取代码中修改url为自己的API链接:

在这里插入图片描述

代码如下:

import requests
import time
 
 
def get_ip():
    url = "这里放你自己的API链接"
    while 1:
        try:
            r = requests.get(url, timeout=10)
        except:
            continue
 
        ip = r.text.strip()
        if '请求过于频繁' in ip:
            print('IP请求频繁')
            time.sleep(1)
            continue
        break
    proxies = {
        'https': '%s' % ip
    }
 
    return proxies
 
 
if name == 'main':
    proxies = get_ip()
    print(proxies)

3、代码返回IP,运行成功:

在这里插入图片描述

五、爬虫实战

我们爬取一个网站时,首先要查看是否有接口数据(有接口就用接口)、其次是能否用requests模块发送请求正常获取数据,如果requests模块不行就考虑使用selenium模块去获取数据了。

5.1 分析网页

在这里插入图片描述

2、按下f12 或者 右击选择检查,选择Network,然后点击刷新:

在这里插入图片描述

3、我们随便选择一个Network下面的列表,接着按ctrl+f 打开搜索框,搜索商品信息找到接口:

在这里插入图片描述

4、点击heades,然后复制链接去新界面打开:

在这里插入图片描述

5、打开后可以看到商品信息:

在这里插入图片描述

6、链接分析:

https://www.lazada.com.ph/catalog/?ajax=true&isFirstRequest=true&page=1&q=MacBook&spm=a2o4l.homepage.search.d_go
  • page参数:是页码

  • q参数:搜索的关键词

5.2 导入模块

import requests  # python基础爬虫库

import pandas as pd  # pandas,用于写入Excel文件

import time  # 防止爬取过快可以睡眠一秒

5.3 传入关键词设置翻页

根据5.1的网页分析我们了解了,只要在接口链接传入关键词和页数就可以成功获取数据:

def main():
    # 一、传入关键词和需要爬取的页数,拼接数据接口链接
    keyword = 'MacBook' # 设置需要爬取的商品关键词
    page_num = 1  # 设置需要爬取的页数
    data_list = []
    for page in range(1, page_num+1):
        url = f'https://www.lazada.com.ph/catalog/?ajax=true&isFirstRequest=true&page={page}&q={keyword}'

5.4 携带代理IP发送请求

下面代码利用4.4案例中的get_ip() 函数去获取代理IP,利用python携带代理IP去请求电商平台,以此达到隐秘IP的目的:

def get_data_json(url):
    """发送请求,获取响应"""
    # 请求头模拟浏览器
    headers = {
        'Authority':'www.lazada.com.ph',
        'Refere':'https://www.lazada.com.ph/',
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36'
    }
    # 获取代理IP
    proxies = get_ip()
    # 添加请求头和代理IP发送请求
    response = requests.get(url,headers=headers,proxies=proxies)
    # 将数据转为json字典格式
    data_json = response.json()
 
    return data_json

5.5 提取数据

提取我们需要的商品标题、商品价格、商品销量、五星好评数、商品链接、商品图片链接,如果需要更多的其他字段可以自己添加解析代码:

def get_data(data_list,data_json):
    listItems = data_json['mods']['listItems']
    print(len(listItems)) # 打印listItems列表长度,返回40,说明数据正确
    for i in listItems:
        try:
            name = i['name']
        except:
            name = None
        try:
            priceShow = i['priceShow']
        except:
            priceShow = None
        try:
            itemSoldCntShow = i['itemSoldCntShow'].replace(' sold','')
        except:
            itemSoldCntShow = None
        try:
            review = i['review']
        except:
            review = None
        try:
            itemUrl = i['itemUrl']
            url = 'https:' + itemUrl
        except:
            url = None
        try:
            image = i['image']
        except:
            image = None
        print({'商品标题':name,'商品价格':priceShow,'商品销量':itemSoldCntShow,'五星好评数':review,'商品链接':url,'商品图片链接':image})
        print('*'*50)
        data_list.append({'商品标题':name,'商品价格':priceShow,'商品销量':itemSoldCntShow,'五星好评数':review,'商品链接':url,'商品图片链接':image})

运行成功返回数据:

在这里插入图片描述

5.6 保存数据

将数据全部写入excel文件中去:

def save(data_list,keyword):
    df = pd.DataFrame(data_list)
    df.to_excel(f'{keyword}.xlsx',index=False) # 根据关键词创建excel文件

5.7 效果展示

使用巨量IP成功爬取电商数据,效果非常Nice,最终生成一个excel表格,有商品标题、价格、销量等等:

在这里插入图片描述

5.8 完整源码

注意下面的完整源码,需要看4.3和4.4修改为自己的代理API才能运行成功,还可以修改爬取的关键词和页数:

import requests  # python基础爬虫库
import pandas as pd  # pandas,用于写入Excel文件
import time  # 防止爬取过快可以睡眠一秒


def get_ip():
    url = "代理IP"
    while 1:
        try:
            r = requests.get(url, timeout=10)
        except:
            continue

        ip = r.text.strip()
        if '请求过于频繁' in ip:
            print('IP请求频繁')
            time.sleep(1)
            continue
        break
    proxies = {
        'https': '%s' % ip
    }

    return proxies


def get_data_json(url):
    """发送请求,获取响应"""
    # 请求头模拟浏览器
    headers = {
        'Authority':'www.lazada.com.ph',
        'Refere':'https://www.lazada.com.ph/',
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36'
    }
    # 获取代理IP
    proxies = get_ip()
    # 添加请求头和代理IP发送请求
    response = requests.get(url,headers=headers,proxies=proxies) 
    # 将数据转为json字典格式
    data_json = response.json()

    return data_json


def get_data(data_list,data_json):
    listItems = data_json['mods']['listItems']
    print(len(listItems)) # 打印listItems列表长度,返回40,说明数据正确
    for i in listItems:
        try:
            name = i['name']
        except:
            name = None
        try:
            priceShow = i['priceShow']
        except:
            priceShow = None
        try:
            itemSoldCntShow = i['itemSoldCntShow'].replace(' sold','')
        except:
            itemSoldCntShow = None
        try:
            review = i['review']
        except:
            review = None
        try:
            itemUrl = i['itemUrl']
            url = 'https:' + itemUrl
        except:
            url = None
        try:
            image = i['image']
        except:
            image = None
        print({'商品标题':name,'商品价格':priceShow,'商品销量':itemSoldCntShow,'五星好评数':review,'商品链接':url,'商品图片链接':image})
        print('*'*50)
        data_list.append({'商品标题':name,'商品价格':priceShow,'商品销量':itemSoldCntShow,'五星好评数':review,'商品链接':url,'商品图片链接':image})



def save(data_list,keyword):
    df = pd.DataFrame(data_list)
    df.to_excel(f'{keyword}.xlsx',index=False) # 根据关键词创建excel文件


def main():
    # 一、传入关键词和需要爬取的页数,拼接数据接口链接
    keyword = 'MacBook' # 设置需要爬取的商品关键词
    page_num = 2  # 设置需要爬取的页数
    data_list = []
    for page in range(1, page_num+1):
        url = f'https://www.lazada.com.ph/catalog/?ajax=true&isFirstRequest=true&page={page}&q={keyword}'
        print(url)
        # 二、发送请求获取数据
        data_json = get_data_json(url)
        # 三、解析数据
        get_data(data_list,data_json)
        time.sleep(1) # 降低爬取速度
    # 四、写入excel
    save(data_list, keyword)


if name == 'main':
    main()

五、总结

在跨境电商广阔的出海赛道中,面对复杂多变的市场环境与业务痛点,不少出海企业都在寻求安全可靠的网络工具,以此化解账号关联、采集受限、访问拦截等各类难题。巨量IP 适配跨境电商多场景业务需求,依托优质的 IP 资源池,具备高连通稳定性、真实的地域环境以及出色的防封禁、抗风控能力,能够高效支撑竞品调研、市场数据采集、店铺运营等工作,为出海企业开展跨境业务保驾护航,有需求的可以了解体验:巨量IP免费体验

Logo

电商企业物流数字化转型必备!快递鸟 API 接口,72 小时快速完成物流系统集成。全流程实战1V1指导,营造开放的API技术生态圈。

更多推荐