直接访问京东商智开发者平台 https://open.jd.com/home/home/index,用已开通商智专业版的京东商家账号登录,按以下步骤操作:
电脑未安装Python的,访问 https://www.python.org/downloads/ 下载最新稳定版3.10+,安装时勾选Add Python to PATH。
打开终端(Windows用CMD或PowerShell,Mac用Terminal),依次输入以下命令安装依赖库:
``` pip install requests pandas openpyxl ```复购意向强的客户定义为“近30天浏览商品≥3次、未下单、未领取优惠券”,按以下步骤拉取:
新建一个名为`jd_customer_maintenance.py`的文件,复制以下完整代码,替换其中的`your_app_key`、`your_app_secret`、`your_shop_id`(你的京东店铺ID,可在商家后台店铺设置查看):
```python import requests import hashlib import time import json import pandas as pd 配置参数 APP_KEY = "your_app_key" APP_SECRET = "your_app_secret" SHOP_ID = "your_shop_id" BASE_URL = "https://api.jd.com/routerjson" 生成签名函数(京东API固定要求) def generate_sign(params): sorted_params = sorted(params.items()) sign_str = APP_SECRET + "".join([f"{k}{v}" for k, v in sorted_params]) + APP_SECRET return hashlib.md5(sign_str.encode("utf-8")).hexdigest().upper() 拉取近30天客户浏览行为数据 def get_customer_browse(): current_time = int(time.time() 1000) end_time = current_time start_time = end_time - 30 24 60 60 1000 params = { "method": "jingdong.data.vender.customerbehavior.browse.get", "app_key": APP_KEY, "timestamp": str(current_time), "format": "json", "v": "2.0", "sign_method": "md5", "shopId": SHOP_ID, "startTime": str(start_time), "endTime": str(end_time), "pageSize": "100", "pageNo": "1" } params["sign"] = generate_sign(params) response = requests.post(BASE_URL, data=params) result = json.loads(response.text) browse_data = [] if result.get("jingdong_data_vender_customerbehavior_browse_get_response"): data_list = result["jingdong_data_vender_customerbehavior_browse_get_response"]["result"]["dataList"] for item in data_list: browse_data.append({ "客户ID": item["customerId"], "客户昵称": item["customerNick"], "浏览商品数": item["browseProductCount"], "最近浏览时间": time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(item["lastBrowseTime"]/1000)) }) 处理多页数据(默认拉取前2页,可根据需求增加pageNo) for page in range(2, 4): params["pageNo"] = str(page) params["sign"] = generate_sign(params) response = requests.post(BASE_URL, data=params) result = json.loads(response.text) if result.get("jingdong_data_vender_customerbehavior_browse_get_response"): data_list = result["jingdong_data_vender_customerbehavior_browse_get_response"]["result"]["dataList"] for item in data_list: browse_data.append({ "客户ID": item["customerId"], "客户昵称": item["customerNick"], "浏览商品数": item["browseProductCount"], "最近浏览时间": time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(item["lastBrowseTime"]/1000)) }) return browse_data 主函数:筛选复购意向强的客户并导出Excel if __name__ == "__main__": browse_df = pd.DataFrame(get_customer_browse()) 筛选:浏览商品≥3次 intent_df = browse_df[browse_df["浏览商品数"] >= 3].copy() 导出Excel(文件名带当前日期) today = time.strftime("%Y%m%d") intent_df.to_excel(f"复购意向客户_{today}.xlsx", index=False, engine="openpyxl") print(f"已导出复购意向客户数据:复购意向客户_{today}.xlsx") ```
京东商家后台支持批量导入客户标签,我们将筛选后的客户生成符合格式的标签表,具体步骤:
访问京东商家后台 https://shop.jd.com/,登录后点击客户运营 → 客户管理 → 标签管理 → 导入标签,下载标准导入模板.xlsx,放在脚本同一文件夹下。
在`jd_customer_maintenance.py`文件末尾添加以下代码:
```python 读取标准模板 template_df = pd.read_excel("标准导入模板.xlsx", engine="openpyxl") 构造标签数据 tag_data = [] for idx, row in intent_df.iterrows(): tag_data.append({ "客户ID": row["客户ID"], "客户昵称": row["客户昵称"], "标签名称": "近30天浏览≥3次未下单" }) tag_df = pd.DataFrame(tag_data) 合并到标准模板(保留模板的空列) final_df = pd.concat([template_df.iloc[:0], tag_df], ignore_index=True) 导出标准标签表 final_df.to_excel(f"待导入客户标签_{today}.xlsx", index=False, engine="openpyxl") print(f"已生成待导入客户标签表:待导入客户标签_{today}.xlsx") ```重新运行脚本,会生成两个Excel文件。
回到商家后台客户运营 → 客户管理 → 标签管理 → 导入标签,选择刚才生成的待导入客户标签_YYYYMMDD.xlsx,点击开始导入,等待1分钟左右查看导入结果,成功导入后可在我的标签中找到“近30天浏览≥3次未下单”标签。
点击客户运营 → 营销活动 → 客户分层营销 → 新建活动:
为了快速查看昨日触达效果,可在脚本中添加拉取昨日标签客户领券/下单数据的功能,但需注意京东商智下单行为API的权限范围(部分专业版套餐可能需额外申请),基础版客户可直接在商家后台客户运营 → 数据中心查看分层营销活动的效果数据。
上一篇: 揭秘京东客单价,像养猪一样养店铺
易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。
Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图