@ exercode/ problem- utils- 浏览器
Puppeteer帮助器,浏览器分级预设,以及Markdown-to-PDF导出.
安装此软件包匹配 Chrome 无头壳 bun run exercode-browser browsers install chrome-headless-shell。 。 。 .
见 仓库文档。 。 。 .
clickAndDetectCanceledSubmit(page, buttonSelector) 使用本地的 Puppeter 指针单击以激活窗体控件,并报告页面是否取消其提交事件。 它支持委托的文档/窗口处理器,并在检查开始时遵守与控制相关的表单. 在同一页上检查顺序运行,所以每个指针动作都有自己的取消结果. 未通过 Puppeteer 可见度检查或本地可点击性计算返回的控制 false; 透明控制,例如 opacity: 0 仍可接触并正常启用。 提交文件可以导航;临时的CDP绑定在文件卸下前保留了取消状态,包括被取消的提交明确重定向时. 未提交文件返回 false分级员应该停止判决 当练习要求学习者在检查结果的 DOM 之前取消提交表时使用此功能 。 创建页面 createBrowserPage 在浏览学习者的内容(如预设)之前:它观察在学习者脚本之前提交事件,包括停止立即传播的窗口抓取处理器. 装入此交互式内容 page.goto: 初始空白文档没有用仪器,以及 page.setContent编号 :document.open 替换文档收听器并失去早期的观察者.
submitFormAndCaptureRequest(page, selector, timeoutMs) 单击窗体控制并捕获其主框架导航为 { method, path, params } 不向服务器发送文件。 它支持 URL 编码 GET/ POST 字段和返回 undefined 当超时前没有导航(默认为2秒). 在一个页面上使用,没有另一个请求-截取处理器. 其临时截取在成功,超时或点击失败后被移除.