0
点赞
收藏
分享

微信扫一扫

Midjourney零基础学习

晚安大世界 2024-10-14 阅读 17

系列文章目录

Python selenium库学习使用实操
Python selenium库学习使用实操二


文章目录

前言

国庆回来,接着搬砖,上回说到使用selenium进行自动登录和简单表单的自动填写,由于短时间内多次登录,触发了系统的图像验证码机制,不得不迫使我去学习下验证码识别了。


一、文字验证码保存

平台使用了文字验证码,看了下dom结构,发现是base64的图片,先将base64图片转换成文件。
我们可以看到一个标准的图片转成的base64:base64_str="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgA********
需要注意的是,如果我们使用python的imgdata = base64.b64decode(image_base64)解码,image_base64是不包含base64_str的头部的,即从iVBOR***开始才是编码内容,所以正确的解码代码如下

def save_base64_image(image_base64, file_path):
    # 看看image_base64类型是不是正确的“bytes”类型
    print(type(image_base64))  
    # 解码图片
    head,context=image_base64.split(",")  # 将base64_str以“,”分割为两部分
    img_data = base64.b64decode(context)    # 解码时只要内容部分
    #将图片保存为文件
    with open("temp.jpg",'wb') as f:
        f.write(img_data)

二、验证码识别

1.引入库

该库名也是非常有趣 —— ddddocr(谐音带带弟弟OCR),Github地址:https://github.com/sml2h3/ddddocr

pip install ddddocr

2.验证码识别

def do_OCR(img_path):
    ocr = ddddocr.DdddOcr()
    with open(img_path, 'rb') as f:
        img_bytes = f.read()
    res = ocr.classification(img_bytes) 
    print(res)
    return res   

总结

`
以上就是文字验证码图像识别的简单操作。接着研究下拉选择框的使用。

举报

相关推荐

0 条评论