Flash 安全審計
在無頭瀏覽器錄製頁面(或讀取影片),執行 EA 的 IRIS 閃光檢測器,採用 WCAG 面積閾值(螢幕的 0.111),並生成 Markdown + JSON 報告。此為篩選工具,非認證。
從此技能資料夾使用其專用 Python 執行指令:.\venv\Scripts\python.exe(以下簡稱 python)。使用 --out 將報告輸出到使用者的專案中。
1. 設定(僅當 .venv 缺少或匯入失敗時)
python -m venv .venv
.\venv\Scripts\python.exe -m pip install -r requirements.txt
.\venv\Scripts\python.exe -m playwright install chromium
2. 選擇輸入
| 輸入 | 使用時機 |
|---|---|
--url https://... | 即時網頁 |
--html 路徑\page.html | 本地 HTML 檔案 |
--video 路徑\clip.mp4 | 遊戲錄影、預告片或任何現有影片 |
python scripts/audit.py --url https://example.com
python scripts/audit.py --html page.html --duration 10
python scripts/audit.py --video clip.mp4
實用選項:--duration(秒,預設 10)、--settle(秒,預設 1)、
--viewport(預設 1024x768)、--out(預設 reports/)。
退出碼 0 = 通過,1 = 失敗,2 = 錯誤。不支援點擊、懸停和滾動;
如果危險需要互動才能觸發,請使用者提供螢幕錄影並使用 --video。
3. 讀取報告(report.md)
- WCAG 2.3.1 結果是唯一的判決。如果發現任何亮度或紅色「閃光失敗」畫面,則判定為失敗。請引用時間範圍。
- **額外警告(非 WCAG)**是 IRIS 廣播規則(例如每秒 2-3 次閃爍持續數秒)。請分別提及;切勿稱之為 WCAG 失敗。
- 比幀率一半更快的閃爍(頁面錄影約 12 Hz)無法測量。切勿將此類內容描述為「通過」。
- 始終重複免責聲明:通過並不表示頁面安全。
4. 失敗時的修正建議
- 將閃爍速度降至每秒低於 3 次。
- 縮小閃爍區域(在 1024 x 768 解析度下,遠小於 341 x 256 像素)。
- 降低閃爍狀態間的亮度對比。
- 避免飽和紅色閃爍。
- 遵守
@media (prefers-reduced-motion: reduce)並新增暫停/停止控制。
5. 安全規則
切勿在可見瀏覽器中開啟測試頁面、受審計頁面或錄影,也切勿向使用者顯示或嵌入它們。僅透過 scripts/audit.py 以無頭模式執行。分享報告,而非影片內容。