妙手:公用采集箱可达(认领到按钮未禁用),任务记录暂空待采集出结果;记录认领→发布的验证顺序
This commit is contained in:
1 parent
bfc1caac00
commit
86845d5a6e
3 files changed
+57
No files matched your search
@@ -159,3 +159,26 @@ await c.send('DOM.setFileInputFiles', { files: ['/path/ms_import.csv'], nodeId }
|
||||
|
||||
### 下一步
|
||||
「查看导入产品」/ **公用采集箱** 里核对这 47 条采集结果,再验证子账号能否 `认领`/`发布`。
|
||||
|
||||
## 公用采集箱与采集任务(第 3 轮观察)
|
||||
|
||||
### 公用采集箱:`https://erp.91miaoshou.com/common_collect_box/items`
|
||||
页面可用按钮(**均为未禁用状态**):`任务记录` / `搜索` / `重置` / `更多筛选` /
|
||||
**`认领到`** / `平台认领配置` / `批量编辑` / `分组` / `删除` / `更多` / `创建产品` / `导入产品` / `列表设置` / `全选`。
|
||||
|
||||
→ **`认领到` 按钮存在且未禁用**,说明子账号**可能**有认领权限(技能档说「不能发布」,但认领≠发布,
|
||||
需要实测点一次才知道)。列表当前为空(尚未采集出结果)。
|
||||
|
||||
### 任务记录
|
||||
点「任务记录」弹层里表头是 `项目 / 提交时间 / 状态 / 翻译配置 / 任务进度 / 操作`,
|
||||
**当前无数据行** —— 说明这 47 条的采集任务还没出结果(导入只登记了链接,
|
||||
真正的抓取是异步队列,可能要看队列积压或需要显式触发)。
|
||||
|
||||
### 下一步(顺序固定)
|
||||
1. 隔一段时间刷新 `/common_collect_box/items` 与「任务记录」,等 47 条采集进箱;
|
||||
2. 进箱后选一条 → 点 **`认领到`** → 选平台/店铺(`平台认领配置` 里可预设)→ 观察是否被权限拦截;
|
||||
3. 若能认领,再看该平台店铺里能否 **发布**(子账号权限的分水岭)。
|
||||
|
||||
### 复用脚本
|
||||
`ms_box.mjs`(进采集箱 dump 按钮/列表)、`ms_task.mjs`(读任务记录)、
|
||||
`ms_items.mjs`(点「查看导入产品」)、`ms_status.mjs`(导入列表状态)、`ms_reason.mjs`(查看失败原因)。
|
||||
@@ -0,0 +1,20 @@
|
||||
import { listPages, wait } from '/home/admin9webs/shein建品/sh_lib.mjs';
|
||||
import { CDP, SAN as S } from '/tmp/cdp3.mjs';
|
||||
const t = (await listPages()).find(x=>/91miaoshou/i.test(x.url));
|
||||
const c = await CDP.connect(t.webSocketDebuggerUrl);
|
||||
await c.send('Page.enable'); await c.send('Runtime.enable'); await wait(1200);
|
||||
// 点左侧「公用采集箱」
|
||||
console.log('点公用采集箱:', String(await c.evalJS(`(()=>{
|
||||
const h=[...document.querySelectorAll('*')].filter(e=>e.offsetParent!==null&&(e.innerText||'').trim()==='公用采集箱'&&e.children.length===0);
|
||||
if(!h.length) return 'nf';
|
||||
for(const ev of ['mousedown','mouseup','click']) h[0].dispatchEvent(new MouseEvent(ev,{bubbles:true,cancelable:true,view:window})); return 'clicked';})()`)));
|
||||
await wait(9000);
|
||||
const o = await c.evalJS(`(()=>{
|
||||
const body=(document.body.innerText||'').replace(/\\s+/g,' ');
|
||||
const m=body.match(/共\\s*\\d+\\s*[条个]/);
|
||||
const rows=[...document.querySelectorAll('tr')].filter(e=>e.offsetParent!==null).map(e=>(e.innerText||'').replace(/\\s+/g,' ').trim()).filter(Boolean).slice(0,4);
|
||||
const btns=[...document.querySelectorAll('button')].filter(e=>e.offsetParent!==null).map(e=>({t:(e.innerText||'').trim().slice(0,10), dis:e.disabled})).filter(x=>x.t).slice(0,14);
|
||||
return JSON.stringify({href:location.href, total:m?m[0]:'', rows, btns});})()`);
|
||||
console.log('采集箱:', S(String(o)).slice(0,1200));
|
||||
try{ await c.shot('/tmp/ms_box.jpg'); console.log('shot ok'); }catch(e){}
|
||||
process.exit(0);
|
||||
@@ -0,0 +1,14 @@
|
||||
import { listPages, wait } from '/home/admin9webs/shein建品/sh_lib.mjs';
|
||||
import { CDP, SAN as S } from '/tmp/cdp3.mjs';
|
||||
const t = (await listPages()).find(x=>/91miaoshou/i.test(x.url));
|
||||
const c = await CDP.connect(t.webSocketDebuggerUrl);
|
||||
await c.send('Runtime.enable'); await wait(1200);
|
||||
console.log('点任务记录:', String(await c.evalJS(`(()=>{const b=[...document.querySelectorAll('button')].find(e=>/任务记录/.test(e.innerText||''));
|
||||
if(!b) return 'nf'; for(const ev of ['mousedown','mouseup','click']) b.dispatchEvent(new MouseEvent(ev,{bubbles:true,cancelable:true,view:window})); return 'clicked';})()`)));
|
||||
await wait(6000);
|
||||
const o = await c.evalJS(`(()=>{
|
||||
const dlgs=[...document.querySelectorAll('.jx-dialog,.jx-drawer,[class*=dialog]')].filter(e=>e.offsetParent!==null);
|
||||
const rows=[...document.querySelectorAll('tr')].filter(e=>e.offsetParent!==null).map(e=>(e.innerText||'').replace(/\\s+/g,' ').trim()).filter(Boolean).slice(0,5);
|
||||
return JSON.stringify({dlg:dlgs.length?dlgs[dlgs.length-1].innerText.replace(/\\s+/g,' ').trim().slice(0,400):'', rows});})()`);
|
||||
console.log('任务记录:', S(String(o)).slice(0,900));
|
||||
process.exit(0);
|
||||
Reference in new issue
Block a user