diff --git a/妙手建品/RECIPE.md b/妙手建品/RECIPE.md index 9d07bae..73848b6 100644 --- a/妙手建品/RECIPE.md +++ b/妙手建品/RECIPE.md @@ -278,3 +278,20 @@ await c.send('DOM.setFileInputFiles', { files: ['/path/ms_import.csv'], nodeId } 舰队技能里另有 `ddddocr` / `captcha-solving` 相关技能可先查。 - 或者**人工在 VNC 登录一次**,agent 接手已登录会话(零风险、立刻可用)。 - 登录后要立刻做的仍是那件事:`/common_collect_box/items` → 点 **`导入产品`** → 看是否列出 `ms2`。 + +## ⚠️ 第 8 轮:子账号报「子账号不存在」(账号侧变化) + +- 今天 08:54(UTC)**同一个子账号 `xiaochaoren2026` 是能登录成功的**(落地页 `/welcome`,标题「妙手-欢迎使用」), + 证据在导入任务与本次会话记录里。 +- 之后我做过 4–5 次登录尝试(验证码读错为主),最后一次在 VNC 里由人工输入验证码, + 报错变成 **「子账号不存在」**(只读核对:表单里的账号/密码就是文档里那一组,验证码框为空)。 +- **判断**:这不是「验证码错」,也不是网络问题,而是**妙手账号侧的状态变化**—— + 该子账号可能被停用/删除,或连续失败触发了账号级处理。 + 页面上那句「再失败 9 次将锁定账号 1 个小时」只解释「锁定」,解释不了「不存在」。 +- **我无法从这台机器进一步确认**(要登录进 `子账号管理` 才能查,而登录正是当前卡点)。 + +### 建议 +1. **改用主账号登录**(最可能是正解):技能档本来就写着这个子账号「只能采集箱/导入采集、不能发布产品」, + 而我们的目标里最后一步是「发布」——所以**主账号迟早必须**; +2. 或在妙手后台核对该子账号是否还在(需要能登录的账号); +3. 或等 1 小时后再试一次(如果其实是锁定被误报成「不存在」,等待即可恢复)。 diff --git a/妙手建品/ms_state.mjs b/妙手建品/ms_state.mjs new file mode 100644 index 0000000..8c40012 --- /dev/null +++ b/妙手建品/ms_state.mjs @@ -0,0 +1,14 @@ +import { listPages, wait } from '/home/admin9webs/shein建品/sh_lib.mjs'; +import { CDP, SAN as S } from '/tmp/cdp3.mjs'; +const ps=(await listPages()).filter(x=>/91miaoshou/i.test(x.url)); +console.log('妙手标签:', ps.length, ps.map(p=>p.url.slice(0,60)).join(' | ')); +if(!ps.length) process.exit(0); +const c=await CDP.connect(ps[ps.length-1].webSocketDebuggerUrl); +await c.send('Runtime.enable'); await wait(1200); +const o=await c.evalJS(`(()=>{ + const txt=(document.body.innerText||'').replace(/\\s+/g,' '); + const errs=txt.match(/.{0,10}(不存在|错误|不正确|锁定|失败).{0,26}/g); + const ins=[...document.querySelectorAll('input')].filter(e=>e.offsetParent!==null).map(e=>({ph:e.placeholder||'', v:String(e.value||'').slice(0,20)})); + return JSON.stringify({href:location.href, errs:(errs||[]).slice(0,4), ins});})()`); +console.log('状态:', S(String(o)).slice(0,600)); +process.exit(0);