本文記錄一個 Delphi 7 實戰項目:針對某遊戲點卡交易網站,實現多交易區自動發帖,核心難點在於破解 4 位數字驗證碼(含干擾色、噪點、字符粘連、旋轉)。方案採用 WebBrowser 自動化填表提交 + 客戶端圖像預處理 + 模板匹配識別,識別率約 80%。
var o: OleVariant;
try
o := EmbeddedWB1.OleObject.Document.all.item('btnok', 0); {按 ID 獲取按鈕}
o.Click; {觸發點擊}
except
txtError.Caption := '未發現提交按鈕';
end;
同理可對 input、textarea、select 賦值 .value。

Gray = 0.299*R + 0.587*G + 0.114*B
Sim = (匹配像素數) / (總像素數) 或 NCC (歸一化互相關)。UnitMain.pas:主邏輯,WebBrowser 事件鏈、定時器輪詢狀態。UnitCaptcha.pas:圖像處理類(TCaptchaRecognizer),封裝預處理、切割、匹配。Templates/:10 個 BMP 模板文件。Project1.dpr:啟動項目。完整源碼已打包上傳資源區,可免積分下載(Delphi 7 專案)。
本代碼僅供技術交流學習,嚴禁用於惡意灌水、刷單、破解驗證碼牟利等違法行為。請遵守目標網站 robots.txt 與服務條款。
結合 WebBrowser 自動化與傳統圖像處理,可在較短時間內實現針對性驗證碼破解。對於通用驗證碼識別,深度學習(CRNN、YOLO+CRNN)已成主流,建議後續學習方向。