如何利用百度ocr实现验证码自动识别
在爬取網(wǎng)站的時(shí)候都遇到過(guò)驗(yàn)證碼,那么我們有什么方法讓程序自動(dòng)的識(shí)別驗(yàn)證碼呢?其實(shí)網(wǎng)上已有很多打碼平臺(tái),但是這些都是需要money。但對(duì)于僅僅爬取點(diǎn)數(shù)據(jù)而接入打碼平臺(tái)實(shí)屬浪費(fèi)。所以百度免費(fèi)ocr正好可以利用。(每天500次免費(fèi))
1、注冊(cè)百度賬號(hào)、百度云管理中心創(chuàng)建應(yīng)用、生成AppKey、SecretKey(程序調(diào)用接口是要生成access_token)
?
2、利用AppKey、SecretKey生成access_token
向授權(quán)服務(wù)地址https://aip.baidubce.com/oauth/2.0/token發(fā)送請(qǐng)求(推薦使用POST)并在URL中帶上以下參數(shù):
grant_type: 必須參數(shù),固定為client_credentials;
client_id: 必須參數(shù),應(yīng)用的API Key;
client_secret: 必須參數(shù),應(yīng)用的Secret Key
代碼如下:
?
3、請(qǐng)求百度ocr通用文字識(shí)別API(下面以百度通用識(shí)別api識(shí)別為例)
請(qǐng)求API的URL https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic
請(qǐng)求方法 POST
請(qǐng)求URL參數(shù) access_token
請(qǐng)求頭 (Header) Content-Type application/x-www-form-urlencoded
Body中放置請(qǐng)求參數(shù),主要參數(shù)詳情如下:
- ?image : 圖像數(shù)據(jù),base64編碼,要求base64編碼后大小不超過(guò)4M,最短邊至少15px,最長(zhǎng)邊最大4096px,支持jpg/png/bmp格式,當(dāng)image字段存在時(shí)url字段失效
- url : 圖片完整URL,URL長(zhǎng)度不超過(guò)1024字節(jié),URL對(duì)應(yīng)的圖片base64編碼后大小不超過(guò)4M,最短邊至少15px,最長(zhǎng)邊最大4096px,支持jpg/png/bmp格式,當(dāng)image字段存在時(shí)url字段失效
?
對(duì)圖片進(jìn)行base64編碼字符
/*** 將本地圖片進(jìn)行Base64位編碼* @param imageFile* @return*/public static String encodeImgageToBase64(String imageFile) {// 其進(jìn)行Base64編碼處理byte[] data = null;// 讀取圖片字節(jié)數(shù)組try {InputStream in = new FileInputStream(imageFile);data = new byte[in.available()];in.read(data);in.close();} catch (IOException e) {e.printStackTrace();}// 對(duì)字節(jié)數(shù)組Base64編碼return Base64Util.encode(data);}?
4、返回結(jié)果以json方式返回
{"log_id": 2471272194,"words_result_num": 2,"words_result": [{"words": " TSINGTAO"},{"words": "青島睥酒"}] }?
項(xiàng)目github地址:https://github.com/xwlmdd/ipProxyPool
注:ocr圖片識(shí)別模塊在這個(gè)項(xiàng)目里的一個(gè)工具類
我的公眾號(hào),喜歡的朋友可以關(guān)注哦
轉(zhuǎn)載于:https://www.cnblogs.com/xwlhyy1072552712/p/7470985.html
總結(jié)
以上是生活随笔為你收集整理的如何利用百度ocr实现验证码自动识别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【转】采用dlopen、dlsym、dl
- 下一篇: Visual Studio 2017 社