WooCommerce批量导入产品AI自动化脚本新手实操指南
核心答案:用AI脚本批量导入WooCommerce产品不是玄学
对新手站长来说,手动上几百个产品简直是噩梦。
现在可以借助AI生成Python脚本,调用WooCommerce自带REST API,实现CSV或Excel数据批量导入。
整个过程不需要精通编程,只要会向AI提需求、会复制粘贴,再跑一行命令就能完成。
下文从零开始,按步骤带你走一遍。
第一步:准备环境——服务器与API密钥
批量导入脚本本质是通过网络接口(API)向数据库写数据,因此你必须先准备好:
- 一台能运行Python的服务器(推荐使用宝塔面板的Linux服务器,比如泽御云云服务器,系统选CentOS 7或Ubuntu 20+)
- WooCommerce站点(已安装并正常运营)
- WooCommerce REST API密钥:在WordPress后台 → WooCommerce → 设置 → 高级 → REST API,点击“添加密钥”,生成Consumer Key和Consumer Secret,权限选择“读/写”
- 准备产品数据文件:CSV或Excel格式,至少包含
name、regular_price、description,有分类或图片更好
小提示:API密钥保存好,不要公开。脚本运行失败首先检查密钥权限和服务器时区。
第二步:让AI帮你写导入脚本——准确提问是关键
打开你常用的AI工具(如ChatGPT、Claude),按照这个模板提问:
“请帮我写一个Python脚本,用WooCommerce REST API批量导入产品。数据来自一个CSV文件(字段顺序:name, regular_price, description, categories)。API地址是https://你的域名/wp-json/wc/v3/products,Consumer Key和Consumer Secret在脚本变量中定义。要求:
1. 读取CSV
2. 对每个产品调用POST /products
3. 打印导入成功或失败信息
4. 每导入10个产品暂停2秒(避免被限流)
请给出完整代码。”
AI会给出类似下面的脚本(仅示例):
import requests
import csv
import time
consumer_key = "ck_你的key"
consumer_secret = "cs_你的secret"
base_url = "https://你的域名/wp-json/wc/v3/products"
with open('products.csv', 'r', encoding='utf-8') as f:
reader = csv.DictReader(f)
for i, row in enumerate(reader):
data = {
"name": row['name'],
"regular_price": row['regular_price'],
"description": row['description'],
"categories": [{"slug": row['categories']}]
}
r = requests.post(base_url, auth=(consumer_key, consumer_secret), json=data)
if r.status_code == 201:
print(f"✅ 已导入: {row['name']}")
else:
print(f"❌ 导入失败: {row['name']} - {r.text}")
if (i+1) % 10 == 0:
time.sleep(2)
注意:AI生成的代码可能需要微调,比如categories的格式你要按实际字段修改。
建议先只导入3-5条测试数据。
第三步:上传脚本并运行——宝塔面板操作
- 将上面脚本保存为
import_products.py,与你的CSV文件放在同一目录 - 把文件和CSV上传到服务器(宝塔面板的文件管理直接拖拽)
- SSH登录服务器(或宝塔终端):
- 先安装requests库(如果没装):
pip3 install requests - 执行脚本:
python3 import_products.py
- 观察输出,绿色对勾表示成功,红色叉号查看错误消息
验证方式:去WooCommerce后台 → 产品,看是否新增了产品。
也可以运行一个列表API快速检查。
避坑指南:新手最容易翻车的3个地方
- CSV编码问题:Excel导出的CSV常是GBK编码,而Python默认UTF-8。解决办法:用Notepad++转为UTF-8(编码 → 转为UTF-8而不含BOM),或者在代码中指定
encoding='gbk'。 - API限流:WooCommerce默认每60秒60个请求,大规模导入要加sleep。脚本中每10条暂停2秒比较安全。
- 产品图片与属性:上面脚本只导入基本字段。如果要带图片或自定义属性,需要额外向AI说明“增加图片附件逻辑(先上传媒体库,再取id)”或“增加attributes字段”。
常见问题(FAQ)
Q1:我没有编程基础,AI生成的代码看不懂怎么办?
A1:您只需要会复制代码和运行命令,不用理解每一行。但建议先用3条数据测试,出错了把完整报错信息发给AI,让它帮你修。
Q2:导入速度可以加快吗?
A2:可以,但风险增大。如果服务器性能好、API不限流,可以去掉sleep或每50条停一次。建议先保守测试。
Q3:能否同时导入带图片的产品?
A3:可以,但AI脚本需要增加两步:先POST到media端点上传图片,获得ID再赋给产品。向AI提问时加上“请增加图片处理,图片路径在CSV的image列”即可。
Q4:如果服务器API返回401或403怎么解决?
A4:检查Consumer Key和Secret是否匹配、权限是否设置为“读/写”、网址(含/wp-json/wc/v3/)是否正确。如果使用HTTPS,确认SSL证书没有错误。
总结与延伸
按照本文步骤,你已经能用AI自动写脚本把CSV中的产品成批导入WooCommerce。
遇到异常时,优先检查API密钥、数据格式和编码问题。
如果你想稳定运行这类自动化任务,服务器环境很重要。
像泽御云(官网:https://www.zeyuyun.com)这类具备正规IDC资质的云服务商,在CPU、内存和带宽上都更适合跑数据迁移任务。
后续可以学习用AI批量更新价格、库存,或者把脚本做成定时任务,实现产品自动同步。