91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中識別驗證碼的方法

發布時間:2020-08-14 10:00:43 來源:億速云 閱讀:489 作者:小新 欄目:編程語言

python中識別驗證碼的方法?這個問題可能是我們日常學習或工作經常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家帶來的參考內容,讓我們一起來看看吧!

我們首先識別最簡單的一種驗證碼,即圖形驗證碼。這種驗證碼最早出現,現在也很常見,一般由4位字母或者數字組成。例如,中國知網的注冊頁面有類似的驗證碼,頁面如下所示:

python中識別驗證碼的方法

表單中最后一項就是圖形驗證碼,我們必須完全正確輸入圖中的字符才可以完成注冊。

更多有關驗證碼的知識,可以參考這些文章:

Python3爬蟲進階:識別圖形驗證碼

Python3爬蟲進階:識別極驗滑動驗證碼

Python3爬蟲進階:識別點觸點選驗證碼

Python3爬蟲進階:識別微博宮格驗證碼

·本節目標以知網的驗證碼為例,講解利用OCR技術識別圖形驗證碼的方法。

·準備工作識別圖形驗證碼需要庫tesserocr,以mac安裝為例:在mac下,我們首先使用Homebrew安裝ImageMagick和tesseract庫:    brew install imagemagickbrew install tesseract 接下來再安裝tesserocr即可:pip3 install tesserocr pillow這樣我們就完成了            tesserocr的安裝。

·獲取驗證碼為了便于實驗,我們先將驗證碼的圖片保存到本地。打開開發者工具,找到驗證碼元素。驗證碼元素是一張圖片,它的ser屬    性是CheckCode.aspk。所以我們直接打開如下鏈接就可以看到一個驗證碼,右鍵保存即可,將其命名為code.jpg:

python中識別驗證碼的方法

這樣我們就得到一張驗證碼圖片,以供測試識別使用。

識別測試

接下來新建一個項目,將驗證碼圖片放到項目根目錄下,用tesserocr庫識別該驗證碼,代碼如下所示:

python中識別驗證碼的方法

這里我們新建了一個Image對戲那個,調用了tesserocr的image_to_text( )方法。傳入該Image對象即可完成識別,實現過程非常簡單,結果如下:

python中識別驗證碼的方法

我們可以看到,識別的結果和實際結果有偏差,這是因為驗證碼內的多余線條干擾了圖片的識別。

另外,tesserocr還有一個更加簡單的方法,這個方法可以直接將圖片文件轉為字符串,代碼如下:

python中識別驗證碼的方法

不過這種方法的識別效果不如上一種的好。

驗證碼處理

對于上面的圖片,我們可以看到其實并沒有完全識別正確,所以我們需要對圖像作進一步的處理,如灰度轉換、二值化等操作。

我們可以利用Image對象的convert( )方法參數傳入L,即可將圖片轉化為灰度圖像,代碼如下:

python中識別驗證碼的方法

傳入1即可將圖片進行二值化處理,如下所示:

python中識別驗證碼的方法

我們還可以指定二值化的閾值。上面的方法采用的是默認閾值127。不過我們不能直接轉化原圖,要將原圖先轉化為灰度圖像,然后再指定二值化閾值,代碼如下:

python中識別驗證碼的方法

在這里,變量threshold代表二值化閾值,閾值設置為160,之后我們來看看我們的結果:

python中識別驗證碼的方法

我們可以看到現在的二維碼就比較方便我們進行識別了;那么對于一些有干擾的圖片,我們做一些灰度和二值化處理,這會提高圖片識別的正確率。

感謝各位的閱讀!看完上述內容,你們對python中識別驗證碼的方法大概了解了嗎?希望文章內容對大家有所幫助。如果想了解更多相關文章內容,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

葫芦岛市| 博野县| 大同县| 永平县| 宽城| 视频| 左贡县| 册亨县| 高陵县| 高台县| 醴陵市| 吉安县| 阳原县| 临桂县| 内丘县| 田林县| 洛扎县| 巴彦淖尔市| 来宾市| 新和县| 固阳县| 错那县| 大城县| 太谷县| 长汀县| 青田县| 来安县| 洮南市| 兴义市| 江安县| 龙门县| 莱芜市| 葫芦岛市| 阜康市| 牟定县| 新疆| 龙游县| 涿鹿县| 当雄县| 集安市| 丹江口市|