国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

搞定滑塊和驗證碼

2022-03-28 15:09 作者:無情劍客Burning  | 我要投稿


Frida可視化工具Dwarf2[1]已經(jīng)開源,大家有什么問題,可以一起交流。

本文內(nèi)容僅用于學(xué)習(xí),嚴(yán)禁用作非法目的。

驗證碼

作用

驗證碼作為一種人機識別手段,其終極目的,就是區(qū)分正常人和機器的操作。 區(qū)分人機行為的作用不言而喻?;ヂ?lián)行為的注冊、登錄、發(fā)帖、領(lǐng)優(yōu)惠券、投票等等應(yīng)用場景,都有被機器刷造成各類損失的風(fēng)險,如果不對各類機器垃圾的行為加以防范,灌水內(nèi)容、垃圾注冊、惡意登錄、刷票、撞庫、活動作弊、垃圾廣告、爬蟲、羊毛黨等用戶行為一旦發(fā)生,將對產(chǎn)品自身發(fā)展、用戶體驗造成極大的影響。

搞定驗證碼

很多網(wǎng)站都使用了驗證碼進(jìn)行人機識別,給爬蟲帶來了一定的困擾。常見的驗證碼如下:

trwebocr

一個開源的ocr工具,非常強大。官方介紹是:?開源易用的中文離線OCR,識別率媲美大廠,并且提供了易用的web頁面及web的接口,方便人類日常工作使用或者其他程序來調(diào)用~?。筆者在github[2]上有關(guān)于它的使用。

通過一個例子來感受一下這個工具。以下是我2022虎年快樂這個公眾號里面部分內(nèi)容的截圖:

trwebocr的識別結(jié)果:

所有的文字都被識別出來了!還是非常nice的。

過驗證碼

有這么強大的工具,過驗證碼豈不是輕而易舉。驗證碼的圖片如下:

直接上代碼:

JWYN被成功識別出來。大功告成?。。。。。?!

python安裝模塊的時候建議使用豆瓣源,真的好快。

缺陷

trwebocr的準(zhǔn)確率達(dá)不到100%,不過依然不能掩蓋它強大的OCR功能。當(dāng)然也可以自己實現(xiàn)類似的功能,使用opencv+CNN效果也不錯。

滑塊

滑塊驗證碼是在網(wǎng)站、App等應(yīng)用中常見的一種驗證方式,通過按照一定規(guī)則滑動滑塊到指定位置完成驗證,才可以進(jìn)行下一步操作?;瑝K驗證碼有兩種設(shè)計,一種是在滑動框內(nèi)“一滑到底”即完成驗證的,還有一種是滑動滑塊拼合拼圖完成驗證的,如下圖所示。由于拼圖式的滑塊驗證碼安全性更高,趣味性更強,“一滑到底”式的滑塊驗證碼已經(jīng)基本被淘汰。

搞定滑塊

使用滑塊機制的網(wǎng)站也有好多,增大了爬蟲的難度,常見的滑塊驗證:

獲取圖片

滑塊驗證第一步需要獲取大圖片,后面統(tǒng)稱為target,以及小圖片,后面稱為template。具體可參見自動登陸QQ空間(3)。 (1) 如果target和template都可以正常下載的話,直接進(jìn)行下載。 (2 ) 如果不能下載的話,可以使用兩種方式進(jìn)行獲取:

第一種方式是使用chromeDriver的截圖功能

第二種方式是使用代理截獲相應(yīng)下載圖片: 筆者使用的代理框架是Titanium[3](C#)框架。

圖片不能下載卻可以顯示出來使用到技術(shù)是img的onload屬性,onload 事件在圖片加載完成后立即執(zhí)行。下面的代碼就是當(dāng)圖片加載完成后立即刪除。

圖片匹配

文中代碼具體可參見自動登陸QQ空間(3)和代碼中相應(yīng)的注釋。 python版本:


寫在最后

大部分驗證碼和滑塊的問題可以通過文章中的方式搞定,如果是短信驗證碼,可能需要接碼平臺來搞定了。最后上一段代碼,模擬人類滑動滑塊行為的:

公眾號

更多內(nèi)容,歡迎關(guān)注我的微信公眾號:半夏之夜的無情劍客。

References

?Dwarf2:?https://github.com/BurningTeng/Dwarf2
?github:?https://github.com/BurningTeng/OCR_frame
?Titanium:?https://github.com/justcoding121/titanium-web-proxy


搞定滑塊和驗證碼的評論 (共 條)

分享到微博請遵守國家法律
余姚市| 宜阳县| 乡城县| 潍坊市| 高平市| 开平市| 安塞县| 岢岚县| 韶关市| 游戏| 满城县| 大悟县| 耿马| 博野县| 鄂伦春自治旗| 苏尼特右旗| 新郑市| 临沂市| 新宁县| 同江市| 堆龙德庆县| 旬邑县| 阿巴嘎旗| 宜兰县| 平果县| 都昌县| 抚宁县| 资阳市| 永康市| 同仁县| 微山县| 东丽区| 昌乐县| 河东区| 灌南县| 赣州市| 普兰县| 鸡西市| 江永县| 江油市| 西城区|