店小秘多平台铺货配方:7 平台建品脚本 + 静默拦截诊断法 + 项目状态
- TikTok/Shopee/速卖通/Walmart 各 46-47 条已在待发布 - Ozon 47 条已建、改价 40/47 - SHEIN 配方跑通第一条;Temu 差「预览图」一步 - 核心产出:MYJ.message.error 钩子诊断法(解开了三个平台的保存静默拦截) - 含下一轮提示词 NEXT-ROUND-PROMPT.md
This commit is contained in:
commit
f5720ad613
94 files changed
+21561
No files matched your search
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,37 @@
|
||||
import json, collections
|
||||
j=json.load(open('/tmp/oz_draft_all.json')); items=j['items']
|
||||
RATE=1500/113.0
|
||||
MARGINS=[0,0.13,0.15,0.20,0.25,0.30,0.35,0.40]
|
||||
def F(g): return 4.2+0.045*g
|
||||
def price(b,g,r): return (b+F(g))/(1-0.2-r) if r<0.8 else None
|
||||
out={}
|
||||
stats=collections.Counter()
|
||||
for p in items:
|
||||
sp=p['vars'][0].get('sp'); eu=p['eu']
|
||||
b=float(sp) if sp else (float(eu)*6.68 if eu else None)
|
||||
w=max([float(v.get('w') or 0) for v in p['vars']] or [0])
|
||||
key=p['oid'] or p['id']
|
||||
tier = 'extra_small_1-500g' if 0<w<=500 else ('budget_500-2500g' if 500<w<=2500 else ('small_1-2000g' if 2000<w else ('UNKNOWN_w0' if w==0 else 'other')))
|
||||
stats[('tier',tier)]+=1
|
||||
if b is None: stats[('nocost',tier)]+=1
|
||||
rec={'oid':p['oid'],'id':p['id'],'name':p['name'],'cost_cny':b,'weight_g':w,'tier':tier,
|
||||
'freight_cny':round(F(w),2),'total_cost_cny':round(b+F(w),2) if b is not None else None,
|
||||
'price_cny':{f'{int(r*100)}%':round(price(b,w,r),2) for r in MARGINS} if b is not None else None,
|
||||
'price_rub':{f'{int(r*100)}%':round(price(b,w,r)*RATE,1) for r in MARGINS} if b is not None else None}
|
||||
out.setdefault(key,[]).append(rec)
|
||||
json.dump(out,open('/tmp/oz_price_500.json','w'),ensure_ascii=False,indent=1)
|
||||
print('=== 分层统计 ===')
|
||||
for k,v in sorted(stats.items()):
|
||||
if k[0]=='tier': print(f' {k[1]:<20} {v}')
|
||||
print('=== 缺成本 ===')
|
||||
for k,v in sorted(stats.items()):
|
||||
if k[0]=='nocost': print(f' {k[1]:<20} {v}')
|
||||
es=[r for v in out.values() for r in v if r['tier']=='extra_small_1-500g']
|
||||
print(f'\n≤500g 档: {len(es)} 条;其中成本齐全 {sum(1 for r in es if r["cost_cny"] is not None)}')
|
||||
print('\n=== ≤500g 定价阶梯(含运费, 单位¥ / ₽) ===')
|
||||
for b in (5,10,20,30):
|
||||
print(f'\n 进货价 {b}元')
|
||||
print(' 重量 | '+' | '.join(f'{int(r*100):>3}%' for r in MARGINS))
|
||||
for g in (50,100,200,300,400,500):
|
||||
cells=' | '.join(f'{price(b,g,r):5.1f}' for r in MARGINS)
|
||||
print(f' {g:>4}g | {cells} → 25%档 {price(b,g,0.25)*RATE:6.0f}₽')
|
||||
Reference in new issue
Block a user