python selenium模块联合带带弟弟破解滑块验证码

hk_data_b64 = driver.execute_script("return arguments[0].toDataURL('image/png').substring(22);",hk_element)
yt_data_b64 = driver.execute_script("return arguments[0].toDataURL('image/png').substring(22);",yt_element)
#解码
img_data = base64.b64decode(img_data_b64)
hk_data = base64.b64decode(hk_data_b64)
yt_data = base64.b64decode(yt_data_b64)
#以二进制保存
with open("./imgs/bg.png","wb") as f:
    f.write(img_data)
    #print("[*]滑块验证码背景图已保存")
with open("./imgs/hk.png","wb") as f:
    f.write(hk_data)
    #print("[*]滑块验证码滑块图片已保存")
with open("./imgs/yt.png","wb") as f:
    f.write(yt_data)
    #print("[*]滑块验证码原图已保存")
print("[*]保存滑动验证码成功")

提取出来如下图所示,(hk\_jg.png是下一个模块处理后的结果,不用管)


计算距离的主要需要图片就是通过hk.png处理后的hk\_jg.png和bg.png两个图片


![](https://img-blog.csdnimg.cn/direct/49801820ead04c9e8116ef6ac7bc9b81.png)


接下来处理hk.png为hk\_jg.png


直接传入hk.png这种图片的路径,可以实现将带有白框的图片截取成只有图片的最小方框,例如:


![](https://img-blog.csdnimg.cn/direct/e00dc220f10249a9933d3a1f447eceee.png)


这么多白框的图片变成下图这种


![](https://img-blog.csdnimg.cn/direct/cc7249382ee44d40955fdd68e30cde63.png)


代码实现如下所示



def hk_chuli(hk_img):
“”"
处理滑块图片
:return:
“”"
image = Image.open(hk_img) # 打开tiff图像
ImageArray = np.array(image)
row = ImageArray.shape[0]
col = ImageArray.shape[1]
# 先计算所有图片的裁剪范围,然后再统一裁剪并输出图片
x_left = row
x_top = col
x_right = 0
x_bottom = 0

for r in range(row):
    fo
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值