利用Python實(shí)現(xiàn)簡單的驗(yàn)證碼處理
序言
我們在做采集數(shù)據(jù)的時候,過快或者訪問頻繁,或者一訪問就給彈出驗(yàn)證碼,然后就蚌珠了~
今天就給大家來一個簡單處理驗(yàn)證碼的方法
環(huán)境模塊
這里需要用到一個 ddddocr 模塊 ,這是別人開源寫好的一個東西,簡單又好用,但是精確度差一點(diǎn)點(diǎn),但是還是非常好用的。
如果你追求精確度的話,可以調(diào)用別人寫好的一些API 。
咱們直接 win+r 彈出搜索框后輸入 cmd ,點(diǎn)擊確定彈出命令提示符窗口, 輸入pip install ddddocr 即可安裝。
不會的話詳細(xì)參考我置頂文章有詳細(xì)講解。
代碼展示
代碼不多,非常簡單。
模塊安裝好之后咱們先導(dǎo)入一下:
import ddddocr
然后實(shí)例化一下,用一個 cor 接收一下這個數(shù)據(jù)。
ocr = ddddocr.DdddOcr()
我這里準(zhǔn)備了四個驗(yàn)證碼:
首先我們用 with open 來讀取一下這文件,讀取方式使用 rb ,因?yàn)槭菆D片的話就讀取它的二進(jìn)制數(shù)據(jù)
with open('img_3.png', 'rb') as f:
使用 f.read() 將數(shù)據(jù)讀取出來,再自定義一個變量接收一下。
img_bytes = f.read()
然后我們通過 classification 將它傳進(jìn)去,把結(jié)果打印出來就可以了。
result = ocr.classification(img_bytes) print(result)
實(shí)現(xiàn)效果:
純數(shù)字的
字母+數(shù)字的
可以看到都完整的識別出來了,即使上面有一些花里胡哨的橫線啥的。
完整代碼
import ddddocr ocr = ddddocr.DdddOcr() with open('img_3.png', 'rb') as f: img_bytes = f.read() result = ocr.classification(img_bytes) print(result)
大家可以自己去試試,也可以直接應(yīng)用在采集數(shù)據(jù)實(shí)踐當(dāng)中~
到此這篇關(guān)于利用Python實(shí)現(xiàn)簡單的驗(yàn)證碼處理的文章就介紹到這了,更多相關(guān) Python驗(yàn)證碼處理內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python使用ChainMap實(shí)現(xiàn)組合數(shù)據(jù)魔法實(shí)例探究
這篇文章主要為大家介紹了Python使用ChainMap實(shí)現(xiàn)組合數(shù)據(jù)魔法實(shí)例探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01在Python的列表中利用remove()方法刪除元素的教程
這篇文章主要介紹了在Python的列表中利用remove()方法刪除元素的教程,是Python入門中的基礎(chǔ)知識,注意其和pop()方法的區(qū)別,需要的朋友可以參考下2015-05-05python數(shù)據(jù)處理之Pandas類型轉(zhuǎn)換的實(shí)現(xiàn)
本文主要介紹了python數(shù)據(jù)處理之Pandas類型轉(zhuǎn)換的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-04-04用Python實(shí)現(xiàn)協(xié)同過濾的教程
這篇文章主要介紹了用Python實(shí)現(xiàn)協(xié)同過濾的教程,主要用于從大數(shù)據(jù)中抽取用戶信息偏好等等,需要的朋友可以參考下2015-04-04Python 實(shí)現(xiàn)OpenCV格式和PIL.Image格式互轉(zhuǎn)
今天小編就為大家分享一篇Python 實(shí)現(xiàn)OpenCV格式和PIL.Image格式互轉(zhuǎn),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01