Files

17 lines
1.1 KiB
JavaScript

import { listPages, wait } from '/home/admin9webs/shein建品/sh_lib.mjs';
import { CDP } from '/tmp/cdp3.mjs';
import { writeFileSync } from 'fs';
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(1000);
// 点一下验证码图刷新
await c.evalJS(`(()=>{const i=document.querySelector('.captcha-field__img'); if(i){const r=i.getBoundingClientRect();
for(const ev of ['mousedown','mouseup','click']) i.dispatchEvent(new MouseEvent(ev,{bubbles:true,cancelable:true,view:window,clientX:r.x+r.width/2,clientY:r.y+r.height/2}));} return 1;})()`);
await wait(2000);
const src = String(await c.evalJS(`(()=>{const i=document.querySelector('.captcha-field__img'); return i?(i.src||''):'';})()`));
const b64 = src.includes('base64,') ? src.split('base64,')[1] : '';
if (!b64) { console.log('没取到验证码图片'); process.exit(1); }
writeFileSync('/tmp/ms_cap2.png', Buffer.from(b64, 'base64'));
console.log('已存 /tmp/ms_cap2.png', Math.round(b64.length/1024)+'KB');
process.exit(0);