识别图片验证码
一个demo
import ddddocr
ocr = ddddocr.DdddOcr()
# 简单的图片数字英文识别
with open('code.jpg', 'rb') as f:
img_bytes = f.read()
res = ocr.classification(img_bytes)
print(res)
# 其它写法
ocr = ddddocr.DdddOcr()
with open('code.png', 'rb') as f:
img_bytes = f.read()
res = ocr.classification(img_bytes)
logger.info(f'验证码识别结果-----> {res}')
# if len(res) != 4 or re.search(r'[\u4e00-\u9fff]', res):
# logger.warning('验证码识别结果-----> 长度不符 或者 含有中文 失败')
# return None
if not re.match(r'^[A-Za-z0-9]{4}$', res):
logger.warning('验证码识别结果-----> 长度不符或者含有非法字符')
return None
可能出现的问题解决
pip install Pillow==9.5.0
demo2 2024.1.11更新
import os
import ddddocr
# 图片识别函数
def img2text(img_file):
ocr = ddddocr.DdddOcr() # 法1
# ocr = ddddocr.DdddOcr(det=True) #法2
with open(img_file, 'rb') as f:
img_bytes = f.read()
# 获取文字
res = ocr.classification(img_bytes)
# print('res:', res)
return res
if __name__ == '__main__':
jpg_ch_file = "captchaWord.png"
res = img2text(jpg_ch_file)
print(res)
本文来自博客园,作者:__username,转载请注明原文链接:https://www.cnblogs.com/code3/p/17604993.html