用Python爬蟲破解滑動驗證碼的案例解析
做爬蟲總會遇到各種各樣的反爬限制,反爬的第一道防線往往在登錄就出現(xiàn)了,為了限制爬蟲自動登錄,各家使出了渾身解數(shù),所謂道高一尺魔高一丈。
今天分享個如何簡單處理滑動圖片的驗證碼的案例。
類似這種拖動滑塊移動到圖片中缺口位置與之重合的登錄驗證在很多網(wǎng)站或者APP都比較常見,因為它對真實用戶體驗友好,容易識別。同時也能攔截掉大部分初級爬蟲。
作為一只python爬蟲,如何正確地自動完成這個驗證過程呢?
先來分析下,核心問題其實是要怎么樣找到目標缺口的位置,一旦知道了位置,我們就可以借用selenium等工具完成拖動的操作。
我們可以借用opencv來解決這個問題,主要步驟:
opencv 是什么?
OpenCV(Open Source Computer Vision Library)是開放源代碼計算機視覺庫,主要算法涉及圖像處理、計算機視覺和機器學習相關(guān)方法,可用于開發(fā)實時的圖像處理、計算機視覺以及模式識別程序。
直接安裝
首先將圖片進行高斯模糊處理,高斯模糊的主要作用是減少圖像的噪聲,用于預處理階段。
處理后的效果
接著用Canny邊緣檢測到得到一個包含“窄邊界”的二值圖像。所謂二值圖像就是黑白圖,只有黑色和白色。
輪廓檢測
找出所有的輪廓,并用紅色線框?qū)⑵淅L制標識出來了,看出來大大小小有幾十個輪廓
剩下的問題就好辦了,我們只需要對輪廓的面積或者周長范圍做限制,就能過濾出目標輪廓的位置, 前提是我們對目標位置的輪廓大小是預先確定的。
輪廓的面積大概是6000到8000之間,周長在300到500之間, 最后用外接矩形獲取該輪廓圖的坐標位置和寬高大小。
如上就找到了目標位置,剩下的工作就是將滑塊移動到指定位置即可
到此這篇關(guān)于用Python爬蟲破解滑動驗證碼的案例解析的文章就介紹到這了,更多相關(guān)Python爬蟲破解滑動驗證碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python7個爬蟲小案例詳解(附源碼)下篇
- Python7個爬蟲小案例詳解(附源碼)中篇
- Python7個爬蟲小案例詳解(附源碼)上篇
- 利用Python爬蟲爬取金融期貨數(shù)據(jù)的案例分析
- Python爬蟲采集Tripadvisor數(shù)據(jù)案例實現(xiàn)
- Python?Ajax爬蟲案例分享
- Python爬蟲入門案例之爬取去哪兒旅游景點攻略以及可視化分析
- Python爬蟲入門案例之爬取二手房源數(shù)據(jù)
- Python爬蟲入門案例之回車桌面壁紙網(wǎng)美女圖片采集
- Python爬蟲之Scrapy環(huán)境搭建案例教程
- python爬蟲系列網(wǎng)絡請求案例詳解
- python爬蟲破解字體加密案例詳解
- python爬蟲線程池案例詳解(梨視頻短視頻爬取)
- python爬蟲scrapy框架的梨視頻案例解析
- python爬蟲利器之requests庫的用法(超全面的爬取網(wǎng)頁案例)
- Python爬蟲實戰(zhàn)案例之爬取喜馬拉雅音頻數(shù)據(jù)詳解
- Python爬蟲Scrapy框架CrawlSpider原理及使用案例
- Python爬蟲之對CSDN榜單進行分析
相關(guān)文章
Python+Selenium+phantomjs實現(xiàn)網(wǎng)頁模擬登錄和截圖功能(windows環(huán)境)
Python是一種跨平臺的計算機程序設(shè)計語言,它可以運行在Windows、Mac和各種Linux/Unix系統(tǒng)上。這篇文章主要介紹了Python+Selenium+phantomjs實現(xiàn)網(wǎng)頁模擬登錄和截圖功能,需要的朋友可以參考下2019-12-12Pytorch的torch.utils.data中Dataset以及DataLoader示例詳解
torch.utils.data?是?PyTorch?提供的一個模塊,用于處理和加載數(shù)據(jù),該模塊提供了一系列工具類和函數(shù),用于創(chuàng)建、操作和批量加載數(shù)據(jù)集,這篇文章主要介紹了Pytorch的torch.utils.data中Dataset以及DataLoader等詳解,需要的朋友可以參考下2023-08-08通過Python使用saltstack生成服務器資產(chǎn)清單
人工去對每一臺服務器的硬件信息并記錄早已經(jīng)過去了,無論通過腳本還是自動化工具都是可以進行一次編寫到處抓取的,本文主要使用saltstack作為使用工具,然后利用其提供的APi編寫所需的Python腳本2016-03-03樹莓派使用USB攝像頭和motion實現(xiàn)監(jiān)控
這篇文章主要為大家詳細介紹了樹莓派使用USB攝像頭和motion實現(xiàn)監(jiān)控,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-06-06Python3.10接入ChatGPT實現(xiàn)逐句回答流式返回
這篇文章主為大家要介紹了Python3.10接入ChatGPT實現(xiàn)逐句回答流式返回示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-03-03Python3.6+Django2.0以上 xadmin站點的配置和使用教程圖解
django自帶的admin站點雖然功能強大,但是界面不是很好看。這篇文章主要介紹了Python3.6+Django2.0以上 xadmin站點的配置和使用 ,本文圖文并茂給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-06-06