import puppeteer from 'puppeteer-core' import path from 'path' const browser = await puppeteer.launch({ executablePath: 'C:/Program Files (x86)/Microsoft/Edge/Application/msedge.exe', headless: 'new', args: ['--window-size=1440,900', '--enable-unsafe-swiftshader'], defaultViewport: { width: 1440, height: 900 }, }) const page = await browser.newPage() const token = process.argv[2] const sketch = process.argv[3] await page.goto(`http://localhost:8000/ai_render?token=${encodeURIComponent(token)}`, { waitUntil: 'networkidle2' }) await new Promise(r => setTimeout(r, 2000)) await page.evaluate(() => { [...document.querySelectorAll('.el-radio-button')].find(b => b.textContent.includes('工程大样图'))?.querySelector('input')?.click() }) await new Promise(r => setTimeout(r, 1000)) // 上传草图 const input = await page.$('.el-upload input[type=file]') await input.uploadFile(path.resolve(sketch)) await new Promise(r => setTimeout(r, 1500)) await page.screenshot({ path: '../shots/bp-upload.png' }) console.log('上传预览截图完成') await browser.close()