/* 真实浏览器验证:主站 URL 仅由本机服务模拟,不请求业务服务器。 */ 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 { pathToFileURL } = require('node:url'); const root = path.resolve(__dirname, '..'); const coreSource = fs.readFileSync(path.join(root, 'question-bank-core.js'), 'utf8'); const scriptSource = fs.readFileSync(path.join(root, '谊安学助手 2.0.user.js'), 'utf8'); assert.deepEqual(Array.from(scriptSource.matchAll(/^\/\/ @match\s+(.+)$/gm), match => match[1].trim()), ['http://10.119.67.7/clientcn/*']); 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 `