/* 真实浏览器验证:只启动本机测试服务,不请求原网站。 */ const assert = require('node:assert/strict'); const fs = require('node:fs'); const path = require('node:path'); const os = require('node:os'); const http = require('node:http'); const { chromium } = require('playwright'); const root = path.resolve(__dirname, '..'); const coreSource = fs.readFileSync(path.join(root, 'question-bank-core.js'), 'utf8'); const scriptSource = fs.readFileSync(path.join(root, '谊安学题库导出.user.js'), 'utf8'); const qaDir = process.env.YIAN_QA_DIR || path.join(os.tmpdir(), 'yianxue-export-qa'); fs.mkdirSync(qaDir, { recursive: true }); const samplePath = path.join(root, '网页样本', '考试答案', '谊安学.html'); function option(label, text, selected = false) { return `