电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

如何用python識別滑塊驗證碼中的缺口

瀏覽:115日期:2022-06-23 15:20:58

驗證碼往往是爬蟲路上的一只攔路虎,而其花樣也是層出不窮:圖片驗證、滑塊驗證、交互式驗證、行為驗證等。隨著OCR技術的成熟,圖片驗證已經漸漸淡出主流,而滑塊驗證越來越多地出現在大眾視野。“這么厲害,這小子長啥樣呢?”沒錯,它就長這損sai:

如何用python識別滑塊驗證碼中的缺口

解決它的方法也很直觀,首先找到缺口的位置(通常只需要X軸的位置),然后拖動滑塊即可。今天kimol君將帶領大家用python識別出滑塊驗證中的缺口位置。

一、缺口識別

識別圖片中的缺口,主要是利用python中的圖像處理庫cv2,其安裝方法如下:

pip install opencv-python

注:這里并不是“pip install cv2”哦~

1.讀取圖片

滑塊驗證的圖片分為兩部分,一個是背景圖片:

如何用python識別滑塊驗證碼中的缺口

另一個是缺口圖片:

如何用python識別滑塊驗證碼中的缺口

利用imread函數將其讀取:

# 讀取背景圖片和缺口圖片bg_img = cv2.imread(’bg.jpg’) # 背景圖片tp_img = cv2.imread(’tp.png’) # 缺口圖片2.識別圖片邊緣

為了更好地將缺口與背景匹配,我們首先得識別出圖片的邊緣:

# 識別圖片邊緣bg_edge = cv2.Canny(bg_img, 100, 200)tp_edge = cv2.Canny(tp_img, 100, 200)

這一步很關鍵!否則缺口匹配將不準確。

這里得到了圖片邊緣的灰度圖,進一步將其圖片格式轉為RGB格式:

# 轉換圖片格式bg_pic = cv2.cvtColor(bg_edge, cv2.COLOR_GRAY2RGB)tp_pic = cv2.cvtColor(tp_edge, cv2.COLOR_GRAY2RGB)

轉換后的背景圖為:

如何用python識別滑塊驗證碼中的缺口

轉換后的缺口圖為:

如何用python識別滑塊驗證碼中的缺口

3.缺口匹配

利用cv2中的matchTemplate函數,可以在背景圖片中搜索對應的缺口,具體代碼如下:

# 缺口匹配res = cv2.matchTemplate(bg_pic, tp_pic, cv2.TM_CCOEFF_NORMED)

res為每個位置的匹配結果,代表了匹配的概率,選出其中概率最高的點,即為缺口匹配的位置:

min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(res) # 尋找最優匹配

min_val,max_val,min_loc,max_loc分別為匹配的最小值、匹配的最大值、最小值的位置、最大值的位置。ps.當然,這里完全可以自己寫一個循環來實現,但是有現成的函數為什么不用呢?

至此,我們已經有了缺口的位置,其X軸坐標為:

X = max_loc[0]

為了更直觀地展示缺口的位置,我們將缺口用矩形框標注出來:

# 繪制方框th, tw = tp_pic.shape[:2] tl = max_loc # 左上角點的坐標br = (tl[0]+tw,tl[1]+th) # 右下角點的坐標cv2.rectangle(bg_img, tl, br, (0, 0, 255), 2) # 繪制矩形cv2.imwrite(’out.jpg’, bg_img) # 保存在本地

結果如下:

如何用python識別滑塊驗證碼中的缺口

完美~ 收工!!!

二、完整代碼

為了在實際應用中更方便的使用,我們將代碼封裝為一個函數:

def identify_gap(bg,tp,out): ’’’ bg: 背景圖片 tp: 缺口圖片 out:輸出圖片 ’’’ # 讀取背景圖片和缺口圖片 bg_img = cv2.imread(bg) # 背景圖片 tp_img = cv2.imread(tp) # 缺口圖片 # 識別圖片邊緣 bg_edge = cv2.Canny(bg_img, 100, 200) tp_edge = cv2.Canny(tp_img, 100, 200) # 轉換圖片格式 bg_pic = cv2.cvtColor(bg_edge, cv2.COLOR_GRAY2RGB) tp_pic = cv2.cvtColor(tp_edge, cv2.COLOR_GRAY2RGB) # 缺口匹配 res = cv2.matchTemplate(bg_pic, tp_pic, cv2.TM_CCOEFF_NORMED) min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(res) # 尋找最優匹配 # 繪制方框 th, tw = tp_pic.shape[:2] tl = max_loc # 左上角點的坐標 br = (tl[0]+tw,tl[1]+th) # 右下角點的坐標 cv2.rectangle(bg_img, tl, br, (0, 0, 255), 2) # 繪制矩形 cv2.imwrite(out, bg_img) # 保存在本地 # 返回缺口的X坐標 return tl[0]

這里選擇了讀取本地圖片文件,在爬蟲過程中其實不是特別方便。如果有感興趣的小伙伴,可以自己改動一下,將輸入改為圖片流即可。

以上就是如何用python識別滑塊中的缺口的詳細內容,更多關于python識別滑塊中的缺口的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 大立教育官网-一级建造师培训-二级建造师培训-造价工程师-安全工程师-监理工程师考试培训 | 【ph计】|在线ph计|工业ph计|ph计厂家|ph计价格|酸度计生产厂家_武汉吉尔德科技有限公司 | 艺术涂料|木纹漆施工|稻草漆厂家|马来漆|石桦奴|水泥漆|选加河南天工涂料 | 动力配电箱-不锈钢配电箱-高压开关柜-重庆宇轩机电设备有限公司 聚天冬氨酸,亚氨基二琥珀酸四钠,PASP,IDS - 远联化工 | 插针变压器-家用电器变压器-工业空调变压器-CD型电抗器-余姚市中驰电器有限公司 | 比亚迪叉车-比亚迪电动叉车堆垛车托盘车仓储叉车价格多少钱报价 磁力去毛刺机_去毛刺磁力抛光机_磁力光饰机_磁力滚抛机_精密金属零件去毛刺机厂家-冠古科技 | 沈阳真空机_沈阳真空包装机_沈阳大米真空包装机-沈阳海鹞真空包装机械有限公司 | pbootcms网站模板|织梦模板|网站源码|jquery建站特效-html5模板网 | 防堵吹扫装置-防堵风压测量装置-电动操作显示器-兴洲仪器 | 校园文化空间设计-数字化|中医文化空间设计-党建|法治廉政主题文化空间施工-山东锐尚文化传播公司 | 青岛空压机,青岛空压机维修/保养,青岛空压机销售/出租公司,青岛空压机厂家电话 | 淘趣英语网 - 在线英语学习,零基础英语学习网站 | 赛默飞Thermo veritiproPCR仪|ProFlex3 x 32PCR系统|Countess3细胞计数仪|371|3111二氧化碳培养箱|Mirco17R|Mirco21R离心机|仟诺生物 | 重庆网站建设,重庆网站设计,重庆网站制作,重庆seo,重庆做网站,重庆seo,重庆公众号运营,重庆小程序开发 | 环氧铁红防锈漆_环氧漆_无溶剂环氧涂料_环氧防腐漆-华川涂料 | 聚合甘油__盐城市飞龙油脂有限公司 | Jaeaiot捷易科技-英伟达AI显卡模组/GPU整机服务器供应商 | 真空泵厂家_真空泵机组_水环泵_旋片泵_罗茨泵_耐腐蚀防爆_中德制泵 | 缝纫客| 热镀锌槽钢|角钢|工字钢|圆钢|H型钢|扁钢|花纹板-天津千百顺钢铁贸易有限公司 | 聚合氯化铝厂家-聚合氯化铝铁价格-河南洁康环保科技 | 十字轴_十字轴万向节_十字轴总成-南京万传机械有限公司 | 温州中研白癜风专科_温州治疗白癜风_温州治疗白癜风医院哪家好_温州哪里治疗白癜风 | 湖南教师资格网-湖南教师资格证考试网 | 杭州营业执照代办-公司变更价格-许可证办理流程_杭州福道财务管理咨询有限公司 | 行星搅拌机,双行星搅拌机,动力混合机,无锡米克斯行星搅拌机生产厂家 | 高低温万能试验机_拉力试验机_拉伸试验机-馥勒仪器科技(上海)有限公司 | 好看的韩国漫画_韩漫在线免费阅读-汗汗漫画 | 破碎机锤头_合金耐磨锤头_郑州宇耐机械工程技术有限公司 | 广州物流公司_广州货运公司_广州回程车运输 - 万信物流 | 福兰德PVC地板|PVC塑胶地板|PVC运动地板|PVC商用地板-中国弹性地板系统专业解决方案领先供应商! 福建成考网-福建成人高考网 | 春腾云财 - 为企业提供专业财税咨询、代理记账服务 | 高低温万能试验机_拉力试验机_拉伸试验机-馥勒仪器科技(上海)有限公司 | 济南铝方通-济南铝方通价格-济南方通厂家-山东鲁方通建材有限公司 | 广东护栏厂家-广州护栏网厂家-广东省安麦斯交通设施有限公司 | 电销卡 防封电销卡 不封号电销卡 电话销售卡 白名单电销卡 电销系统 外呼系统 | 活性炭-蜂窝-椰壳-柱状-粉状活性炭-河南唐达净水材料有限公司 | 深圳货架厂_仓库货架公司_重型仓储货架_线棒货架批发-深圳市诺普泰仓储设备有限公司 | 洗地机-全自动/手推式洗地机-扫地车厂家_扬子清洁设备 | 深圳市简易检测技术有限公司| 气胀轴|气涨轴|安全夹头|安全卡盘|伺服纠偏系统厂家-天机传动 |