此方法可破解简单的验证码,如:
注:中文识别正在寻找办法
安装:
1、python3
2、Pillow
3、pytesseract
4、tesseract-ocr 下载地址:https://pan.baidu.com/s/1kXIsg1S9CqgSpgzeg9T59Q
安装tesseract-ocr后,在pytesseract源码中将
tesseract_cmd=‘’改为本地安装的tesseract-ocr 的目录:
tesseract_cmd = r'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'
找一张验证码的图片保存,爬虫也好,selenium截屏也好,保存到本地,再进行识别
代码
import pytesseract
from PIL import Image
from PIL import ImageEnhance
def readImage(path):
img = Image.open(path) # 根据地址,读取图片
imgry = img.convert('L') # 图像加强,二值化
sharpness = ImageEnhance.Contrast(imgry) # 对比度增强
sharp_img = sharpness.enhance(2.0)
sharp_img.save("new.png") # 将处理后的图片,保存为new.png
image = Image.open('new.png') # 打开处理后的图片
code = pytesseract.image_to_string(image) # 读取里面的内容
return code
if __name__=="__main__":
path = '3.png'
a = readImage(path)
print(a)
附下载地址: tesseract-ocr的版本与语言包的版本必须对应
tesseract-ocr 各版本下载地址:https://digi.bib.uni-mannheim.de/tesseract/
tesseract-ocr 各版本语言包下载地址:https://github.com/tesseract-ocr/tesseract/wiki/Data-Files#cube-data-files-for-version-304305