Files
dianxiaomi-crossborder-play…/shein建品/shops.mjs
T
admin9webs f5720ad613 店小秘多平台铺货配方:7 平台建品脚本 + 静默拦截诊断法 + 项目状态
- TikTok/Shopee/速卖通/Walmart 各 46-47 条已在待发布
- Ozon 47 条已建、改价 40/47
- SHEIN 配方跑通第一条;Temu 差「预览图」一步
- 核心产出:MYJ.message.error 钩子诊断法(解开了三个平台的保存静默拦截)
- 含下一轮提示词 NEXT-ROUND-PROMPT.md
2026-09-20 17:29:38 +08:00

41 lines
2.1 KiB
JavaScript

import { attach, SAN } from '/tmp/cdp3.mjs';
const c = await attach('/web/ozonProduct/draft') || await attach('dianxiaomi.com');
if(!c){ console.log('✗ 无页面'); process.exit(1); }
await c.send('Runtime.enable');
const r = await c.evalJS(`(async()=>{
const rr = await fetch('/api/userInfo.json?_t='+Date.now(), {headers:{'X-Requested-With':'XMLHttpRequest'}});
const tx = await rr.text();
if(!tx.startsWith('{')) return JSON.stringify({err:'notjson', head:tx.slice(0,120)});
const j = JSON.parse(tx); const d = j.data||{};
const out = { topKeys: Object.keys(d) };
// shopMap 结构
const sm = d.shopMap || d.shops || {};
out.shopMapType = Array.isArray(sm)?'array':typeof sm;
if (Array.isArray(sm)) {
out.shops = sm.map(s=>({id:s.id, idStr:s.idStr, name:s.name||s.shopName, platform:s.platform||s.platformName, site:s.site}));
} else {
out.shopMapKeys = Object.keys(sm).slice(0,40);
out.shops = [];
for (const [k,v] of Object.entries(sm)) {
if (Array.isArray(v)) v.forEach(s=>out.shops.push({platform:k, id:s.id, idStr:s.idStr, name:s.name||s.shopName, site:s.site}));
else if (v && typeof v === 'object') out.shops.push({platform:k, id:v.id, idStr:v.idStr, name:v.name||v.shopName});
}
}
// 平台列表
out.platformList = d.platformList || d.platforms || d.shopPlatformList || null;
return JSON.stringify(out);
})()`, true);
try{
const d = JSON.parse(String(r));
if (d.err) { console.log(' ✗', d.err, d.head); process.exit(0); }
console.log(' userInfo 顶层字段:', (d.topKeys||[]).join(', ').slice(0,300));
console.log(' shopMap 类型:', d.shopMapType);
if (d.shopMapKeys) console.log(' shopMap 键(平台):', d.shopMapKeys.join(', '));
console.log();
console.log(' ── 全部店铺 ──');
(d.shops||[]).forEach(s=>console.log(' ', String(s.platform).padEnd(16), 'id='+String(s.id||s.idStr).padEnd(12), s.name||''));
if (d.platformList) console.log();
if (d.platformList) console.log(' platformList:', SAN(JSON.stringify(d.platformList)).slice(0,400));
}catch(e){ console.log('err', e.message, SAN(String(r)).slice(0,600)); }
c.close();