Python識別字母數字組合驗證碼
在爬蟲過程中難免會遇到驗證碼,各種驗證碼似乎阻擋了爬蟲的腳步。
因為本文實現的功能是在內網環境下完成的,所以沒有程式碼介紹,也沒有識別效果顯示。
1、編碼和轉換樣本影像。
2、得到一個能夠反映影像特徵的code,然後儲存所有這些樣本影像的code。
3、圖片轉換code的方法可以選擇hash進行轉換。
圖片轉換code的方法我選擇的hash轉換過程如下:
縮放:圖片縮放8*8。
求平均值:計算灰度圖中所有畫素的平均值。
比較:畫素值大於平均值1,反之0,總共64位。
生成hash:將上述步驟生成的1和0按順序組合成圖片的指紋(hash)。順序不固定。但比較時必須有相同的順序。
在獲得hash值後,將同一數字對於圖片的hash值存在於txt檔案中,在實際使用時,對預測影像進行上述相同的預處理操作,出4張圖片,然後計算出4張預測影像的hash值,將測試影像的hash值與TXT檔案中的hash進行比較,計算出漢明距離,即兩個64位的hash值有多大不同,不同位數越少,圖片越相似。
在獲得測試影像與每個樣本影像hash值的漢明距離後,進行統計,平均取預測值最大的樣本影像標籤作為預測值。識別速度也不錯,平均只需要0.3秒就可以完成一次識別。
這種識別方法操作簡單,對簡單的字母數字組合驗證碼非常有效,但對影像預處理提出了更高的要求,不具有泛化性。不同的驗證碼每次都需要單獨編輯規則。
以上就是Python識別字母數字組合驗證碼的方法,希望對大家有所幫助。更多Python學習指路:
本文教程操作環境:windows7系統、Python 3.9.1,DELL G3電腦。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2471/viewspace-2828264/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- JavaScript數字和字母組合驗證碼詳解JavaScript
- 使用 Ruby 識別英文數字驗證碼
- 使用 Swift 識別英文數字驗證碼Swift
- 使用 OCaml 識別英文數字驗證碼
- 驗證字串是否由字母、中文或者數字組成字串
- 使用 C# 識別英文數字驗證碼C#
- 驗證由數字和字母組成字串的正規表示式字串
- python 驗證碼識別示例(一) 某個網站驗證碼識別Python網站
- PHP實現隨機數字、字母的驗證碼功能PHP隨機
- 一對一聊天原始碼,驗證碼生成隨機數字排列組合原始碼隨機
- Python驗證碼識別:利用pytesser識別簡單圖形驗證碼Python
- Python識別網站驗證碼Python網站
- python利用Tesseract識別驗證碼Python
- Python驗證碼自動識別Python
- 驗證碼識別
- Java之生成一個隨機驗證碼(數字+大小寫字母)Java隨機
- 利用PyTorch訓練模型識別數字+英文圖片驗證碼PyTorch模型
- 初探驗證碼識別
- java識別驗證碼Java
- Python OCR識別圖片驗證碼(一)Python
- Python OCR識別圖片驗證碼(二)Python
- Python驗證碼識別處理例項Python
- 神器!使用Python 輕鬆識別驗證碼Python
- 正規表示式數字數字型別驗證程式碼型別
- php實現完整版驗證碼(數字+大小寫字母+干擾素)PHP
- 正規表示式驗證六位數以上數字,符號,字母任意兩種混合的密碼驗證策略符號密碼
- 影片直播app原始碼,傳送驗證碼 驗證碼識別APP原始碼
- 每次登入驗證都用Python來識別驗證碼,真的是太方便了!Python
- 驗證碼的識別和運用
- 簡單的數字驗證碼破解
- js驗證數字JS
- 一對一聊天原始碼,驗證碼選擇輸入字母驗證原始碼
- 17_電話號碼的字母組合
- 驗證只包含數字和英文字母的正規表示式程式碼例項
- Python高效深度學習機器識別驗證碼教程分享Python深度學習
- Python爬蟲教程-29-驗證碼識別-Tesseract-OCRPython爬蟲
- PHP非字母數字の程式碼PHP
- 大小寫字母和數字的組合,不能使用特殊字元正規表示式字元