- mcn-dou-analysis: 功能三产出设定后自动生成设定卡(Step7); 设定md与卡片SVG双向联动维护规则固化(06文档+03文档+SKILL.md); 浅色系配色定稿玫瑰金(#D6A3A9→#9A5563)+背景文字提亮规则; 新增06生成账号设定卡片文档+模板样例 - mcn-work-shop: 首页数据预览条/周榜预览表加宽/改名AI脚本诊断/tab切换/添加账号弹窗等优化 - 新增 cdp-*.mjs 验证脚本14个(可复用); .gitignore 忽略运行日志/截图/tmp
25 lines
1.8 KiB
JavaScript
25 lines
1.8 KiB
JavaScript
// 截图王微斯账号设定卡 SVG 渲染效果(自检配色)
|
|
const list = await fetch('http://localhost:9223/json').then((r) => r.json());
|
|
let page = list.find((t) => t.type === 'page' && (decodeURIComponent(t.url).includes('王微斯') || t.url.includes('8899')));
|
|
if (!page) { console.log('ERR: no wangweisi/8899 page open'); process.exit(1); }
|
|
const ws = new WebSocket(page.webSocketDebuggerUrl);
|
|
let id = 0; const pending = new Map();
|
|
const send = (method, params = {}) => new Promise((res, rej) => { const i = ++id; pending.set(i, { res, rej }); ws.send(JSON.stringify({ id: i, method, params })); });
|
|
ws.onmessage = (e) => { const m = JSON.parse(e.data); if (m.id && pending.has(m.id)) { const p = pending.get(m.id); pending.delete(m.id); m.error ? p.rej(new Error(m.error.message)) : p.res(m.result); } };
|
|
await new Promise((r) => (ws.onopen = r));
|
|
const ev = async (expr) => { const r = await send('Runtime.evaluate', { expression: expr, returnByValue: true, awaitPromise: true }); if (r.exceptionDetails) return { __err: (r.exceptionDetails.exception?.description || r.exceptionDetails.text).slice(0, 300) }; return r.result.value; };
|
|
const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
|
|
await send('Page.enable'); await send('Runtime.enable');
|
|
|
|
// 导航到本地 SVG 文件并强制重载(同一 URL 导航不触发重载)
|
|
const url = 'file:///C:/Users/maidou/Desktop/MCNSkill项目/王微斯/王微斯账号设定卡.svg';
|
|
await send('Page.navigate', { url });
|
|
await sleep(1200);
|
|
await send('Page.reload', { ignoreCache: true });
|
|
await sleep(2500);
|
|
const r = await send('Page.captureScreenshot', { format: 'png' });
|
|
const fs = await import('node:fs');
|
|
fs.writeFileSync('shot-wangweisi-card.png', Buffer.from(r.data, 'base64'));
|
|
console.log('截图完成: shot-wangweisi-card.png');
|
|
ws.close();
|