当前位置:网站首页 >  教程

电商独立站精细化标签画像构建与自动化推送实操

时间:2026年05月31日 21:45:04 来源:易频IT社区

一、前期准备

本次选择低门槛开源电商框架:WordPress+WooCommerce(80%独立站常用,零代码可快速搭基础站,丰富插件覆盖需求),配合Python脚本做标签采集计算,无需额外后端开发框架成本

1.1 基础环境搭建

  • 服务器:选择1核2G内存/40G SSD云服务器即可,腾讯云轻量应用服务器选「WordPress+WooCommerce」预装镜像,直接安装后访问服务器IP完成WooCommerce初始配置:
    • 设置店铺地址、币种
    • 勾选「WooCommerce REST API」权限
  • 本地Python环境:安装Python 3.10+版本,下载地址:https://www.python.org/downloads/
  • 安装必要Python库:打开本地终端(Windows用CMD/PowerShell,Mac/Linux用Terminal),执行以下命令:
    pip install requests pandas numpy

1.2 获取WooCommerce API密钥

  • 登录WordPress后台→左侧菜单「WooCommerce」→「设置」→「高级」→「REST API」
  • 点击「Add Key」
  • 填写「描述」(比如「标签推送」),「用户」选择「管理员」,「权限」选「读/写」
  • 点击「Generate API Key」,立即保存生成的Consumer Key、Consumer Secret、Key ID(关闭窗口后无法再查看完整Consumer Secret)

二、构建用户标签体系

先做3类核心标签:基础属性、行为属性、价值属性,标签值预设可覆盖80%基础运营场景

2.1 预设标签体系(可直接复制后续使用)

  • 基础属性:性别(未知/男/女)、年龄段(18-24/25-34/35-44/45+)、来源渠道(自然搜索/付费广告/老客分享/邮件注册)
  • 行为属性:最近浏览类目、最近浏览商品数、浏览停留时长区间(<10s/10s-1min/1min-5min/>5min)、是否加购未付款、最近加购时间
  • 价值属性:累计消费金额区间(0/0-99/100-499/500-999/1000+)、累计订单数、复购率(0次复购/1-2次复购/3+次复购)

三、Python标签采集与计算

电商独立站精细化标签画像构建与自动化推送实操

以下是可直接复制的脚本,替换预留参数即可运行

3.1 完整可复制脚本

import requests
import pandas as pd
import numpy as np
from datetime import datetime, timedelta
================== 替换预留参数 ==================
CONSUMER_KEY = "替换你的Consumer Key"
CONSUMER_SECRET = "替换你的Consumer Secret"
STORE_URL = "替换你的独立站完整地址(不带结尾的/)"
==================================================
def get_woocommerce_data(endpoint, params=None):
url = f"{STORE_URL}/wp-json/wc/v3/{endpoint}"
response = requests.get(url, auth=(CONSUMER_KEY, CONSUMER_SECRET), params=params)
if response.status_code == 200:
return response.json()
else:
print(f"请求失败:{response.status_code} - {response.text}")
return []
1. 采集基础属性、订单数据
customers = get_woocommerce_data("customers", params={"per_page": 100})
orders = get_woocommerce_data("orders", params={"per_page": 100, "status": "completed"})
2. 整理数据为DataFrame
df_customers = pd.DataFrame(customers)
df_orders = pd.DataFrame(orders)
3. 计算标签
def calculate_tags(row):
初始化标签
tags = []
3.1 基础属性:性别(从收货地址/账单地址推测)
gender = "未知"
if pd.notna(row.get("billing", {}).get("first_name")) and pd.notna(row.get("billing", {}).get("last_name")):
full_name = f"{row['billing']['first_name']}{row['billing']['last_name']}"
简单性别推测(仅中文姓名,英文可加第三方API,但本次零门槛)
male_keywords = ["伟", "强", "军", "杰", "涛"]
female_keywords = ["芳", "丽", "娜", "婷", "霞"]
for kw in male_keywords:
if kw in full_name:
gender = "男"
break
if gender == "未知":
for kw in female_keywords:
if kw in full_name:
gender = "女"
break
tags.append(f"性别:{gender}")
3.2 基础属性:年龄段(本次仅计算身份证生日,没有生日数据默认未知)
age_tag = "未知"
if pd.notna(row.get("billing", {}).get("birthday")):
birthday = datetime.strptime(row["billing"]["birthday"], "%Y-%m-%d")
today = datetime.today()
age = today.year - birthday.year - ((today.month, today.day) < (birthday.month, birthday.day))
if 18 <= age <25:
age_tag = "18-24"
elif 25 <= age <35:
age_tag = "25-34"
elif 35 <= age <45:
age_tag = "35-44"
elif age >=45:
age_tag = "45+"
tags.append(f"年龄段:{age_tag}")
3.3 基础属性:来源渠道(WooCommerce默认无记录,需后续安装插件,但本次用注册后第一笔订单备注)
注:建议后续安装「Customer Source for WooCommerce」插件完善来源,本次跳过
3.4 价值属性:累计消费金额区间
total_spent = float(row.get("total_spent", 0))
if total_spent == 0:
spend_tag = "0"
elif 0 < total_spent <100:
spend_tag = "0-99"
elif 100 <= total_spent <500:
spend_tag = "100-499"
elif 500 <= total_spent <1000:
spend_tag = "500-999"
else:
spend_tag = "1000+"
tags.append(f"累计消费:{spend_tag}")
3.5 价值属性:累计订单数
order_count = int(row.get("orders_count", 0))
repurchase_tag = "0次复购"
if order_count == 2:
repurchase_tag = "1-2次复购"
elif order_count >=3:
repurchase_tag = "3+次复购"
tags.append(f"复购:{repurchase_tag}")
return ", ".join(tags)
df_customers["user_tags"] = df_customers.apply(calculate_tags, axis=1)
4. 将标签更新到WooCommerce后台
for index, row in df_customers.iterrows():
customer_id = row["id"]
existing_meta = get_woocommerce_data(f"customers/{customer_id}/meta_data")
检查是否已有自定义标签字段,有则覆盖,无则新增
existing_tag_id = None
for meta in existing_meta:
if meta["key"] == "user_custom_tags":
existing_tag_id = meta["id"]
break
更新标签
meta_data = {"key": "user_custom_tags", "value": row["user_tags"]}
if existing_tag_id:
覆盖
requests.post(
f"{STORE_URL}/wp-json/wc/v3/customers/{customer_id}/meta_data/{existing_tag_id}",
auth=(CONSUMER_KEY, CONSUMER_SECRET),
json=meta_data
)
else:
新增
requests.post(
f"{STORE_URL}/wp-json/wc/v3/customers/{customer_id}/meta_data",
auth=(CONSUMER_KEY, CONSUMER_SECRET),
json=meta_data
)
print(f"已完成{len(df_customers)}位用户的标签更新!")

3.2 脚本运行与标签验证

  • 将脚本保存为「wc_tag_calculator.py」
  • 打开本地终端,进入脚本所在文件夹,执行命令:
    python wc_tag_calculator.py
  • 验证:登录WordPress后台→左侧菜单「用户」→点击任意用户→查看「WooCommerce」区域→找到「user_custom_tags」字段确认标签

四、零门槛自动化标签推送

使用WordPress后台自带插件「MailPoet」(免费版足够覆盖基础场景,与WooCommerce深度集成)

4.1 安装MailPoet插件

  • 登录WordPress后台→左侧菜单「插件」→「安装插件」
  • 搜索「MailPoet」→点击「安装」→点击「启用」
  • 完成初始配置:选择「WooCommerce」模式,授权访问WooCommerce数据

4.2 创建自动化推送规则

  • 创建「加购未付款提醒」规则:
    • 登录WordPress后台→左侧菜单「MailPoet」→「自动化」→「添加新自动化」
    • 选择「WooCommerce自动化」模板→「购物车遗弃:24小时后」
    • 点击「编辑自动化」→在「触发条件」后添加「筛选条件」→选择「用户自定义字段」→填写字段名「user_custom_tags」→包含关键词「累计消费:100-499」(可选高价值潜客)
    • 点击「编辑邮件」→使用邮件编辑器添加加购商品图片、满减优惠券代码
    • 点击「保存并激活」
  • 创建「复购专属券」规则:
    • 同样点击「添加新自动化」→选择「自定义触发」模板
    • 触发条件:用户加入「3+次复购」自定义列表(后续可在MailPoet「列表」→「新建列表」,并通过「同步规则」添加筛选user_custom_tags为「复购:3+次复购」的用户)
    • 后续步骤同上,添加专属大额优惠券邮件

相关推荐

最新

热门

推荐

精选

标签

易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。

Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图