使用pytesseract识别简单验证码

from PIL import Image
import pytesseract
from pytesseract import *

rep={‘O‘:‘0‘,                           #替换列表
    ‘I‘:‘1‘,‘L‘:‘1‘,
    ‘Z‘:‘2‘,
    ‘S‘:‘8‘
    };

def initTable(threshold=140):           # 二值化函数
    table = []
    for i in range(256):
        if i < threshold:
            table.append(0)
        else:
            table.append(1)

    return table
#--------------------------------------------------------------------------------------
im = Image.open(‘C:/Users/asus-pc/Desktop/Captcha.jpg‘)     #1.打开图片
im = im.convert(‘L‘)                                        #2.将彩色图像转化为灰度图
binaryImage = im.point(initTable(), ‘1‘)                    #3.降噪,图片二值化
# binaryImage.show()

text = image_to_string(binaryImage, config=‘-psm 7‘)

#4.对于识别结果,常进行一些替换操作
for r in rep:
    text = text.replace(r,rep[r])

#5.打印识别结果
print(text)

别人写的

from PIL import Image
import pytesseract
from pytesseract import *

rep={‘O‘:‘0‘,                           #替换列表
    ‘I‘:‘1‘,‘L‘:‘1‘,
    ‘Z‘:‘2‘,
    ‘S‘:‘8‘
    };

def initTable(threshold=140):           # 二值化函数
    table = []
    for i in range(256):
        if i < threshold:
            table.append(0)
        else:
            table.append(1)

    return table
#--------------------------------------------------------------------------------------
im = Image.open(‘C:/Users/asus-pc/Desktop/Captcha.jpg‘)     #1.打开图片
im = im.convert(‘L‘)                                        #2.将彩色图像转化为灰度图
binaryImage = im.point(initTable(), ‘1‘)                    #3.降噪,图片二值化
# binaryImage.show()

text = image_to_string(binaryImage, config=‘-psm 7‘)

#4.对于识别结果,常进行一些替换操作
for r in rep:
    text = text.replace(r,rep[r])

#5.打印识别结果
print(text)

作者:小潘东链接:https://www.jianshu.com/p/365f91aea667來源:简书著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

原文地址:https://www.cnblogs.com/zhangxiaomeng1991/p/8298280.html

时间: 2024-08-07 09:58:12

使用pytesseract识别简单验证码的相关文章

knn识别简单验证码

参考 https://www.biaodianfu.com/knn-captcha-recognition.html 内容大致一样,只是根据自己的想法加入了一些改动 KNN(k近邻算法) 算法原理请看:https://www.biaodianfu.com/knn.html 我来说一下sklearn中knn的属性和方法 sklearn.neighbors.KNeighborsClassifier(n_neighbors = 5,weights ='uniform',algorithm ='auto

python 验证码识别示例(四) 简单验证码识别

今天介绍一个简单验证的识别. 主要是标准的格式,没有扭曲和变现.就用 pytesseract 去识别一下. 验证码地址:http://wsxf.mca.gov.cn/zfp/Random.cmd?d=1565452532947 需要识别的验证码是: 识别结果是: 识别率百分之八十.10个有两个错误. 识别代码: #coding:utf-8 from common.contest import * from PIL import Image import pytesseract def recog

python 验证码识别示例(五) 简单验证码识别 &#187; 立即查看

今天介绍一个简单验证的识别. 主要是标准的格式,没有扭曲和变现.就用 pytesseract 去识别一下. 验证码地址:http://wscx.gjxfj.gov.cn/zfp/webroot/xfsxcx.html 需要识别的验证码是: 因为这个验证码有干扰点,所以直接识别的效果非常不好. 首先对验证码进行二值化和降噪. 效果如下: 识别结果: 识别率只有百分之四十,针对这么低的识别率,可以去切割分类,目前这个验证码很容易去切割.提高验证码的识别率问题. 二值化代码: # coding:utf

python 验证码识别示例(三) 简单验证码识别

今天介绍一个简单验证的识别. 主要是标准的格式,没有扭曲和变现.就用 pytesseract 去识别一下. 验证码地址:https://user.www.gov.cn/sso/verifyimg_edit?rd=0.22469390770687414 需要识别的验证码是: 识别结果是: 识别代码是: #coding:utf-8 from common.contest import * from PIL import Image import pytesseract def recognize_c

python-使用内置库pytesseract实现图片验证码的识别

环境准备: 1.安装Tesseract模块 git文档地址:https://digi.bib.uni-mannheim.de/tesseract/ 百度网盘下载地址: 链接:https://pan.baidu.com/s/16RoJ19WynWOKI4Zpr0bKzA 提取码:5hst 下载后右击安装即可 2.配置环境变量: 编辑 系统变量里面 path,添加下面的安装路径:D:\Program Files\Tesseract-OCR(填写自己的实际安装路径) 3.安装python的第三方库:

C#简单验证码码识别

写在最前 最近做一个小玩意需要识别验证码,之前从来没接触过验证码识别这块,这可难到了我.所以,只有三番五次的麻烦度娘帮我找找验证码识别这块的资料.所幸,许多前辈分享的博文帮到了我.最终,完美的把问题解决. 我要识别的验证码属于非常简单的一种,如下图: 1.图片灰度化(把彩色的验证码图片转换成灰色图片) for(int i = 0; i < bmp.Width; i++) { for(int j = 0; j < bmp.Height; j++) { Color color = bmp.GetP

简单验证码的识别

验证码图片均取自于国内某知名信息安全网站,通过图像处理.模板对比识别等步骤,实现了该类简单验证码图片的识别功能.同时对程序实现了可视化界面,并集成了(验证码)图片下载.(灰度值)门限手动调节等扩展功能.代码存在github,传送门请戳我. 一.程序内容及原理 本程序以Python实现,主要借助了PIL(Python Image Library,实现读取图片.读取灰度值等图像处理相关功能)及tkinter(实现界面设计相关功能)两个库.图像处理及识别的主程序的总体流程如下:导入(读取)验证码图片,

python下调用pytesseract识别某网站验证码

一.pytesseract介绍 1.pytesseract说明 pytesseract最新版本0.1.6,网址:https://pypi.python.org/pypi/pytesseract Python-tesseract is a wrapper for google's Tesseract-OCR( http://code.google.com/p/tesseract-ocr/ ). It is also useful as astand-alone invocation script

Python验证码识别--利用pytesser识别简单图形验证码

一.探讨 识别图形验证码可以说是做爬虫的必修课,涉及到计算机图形学,机器学习,机器视觉,人工智能等等高深领域…… 简单地说,计算机图形学的主要研究内容就是研究如何在计算机中表示图形.以及利用计算机进行图形的计算.处理和显示的相关原理与算法.图形通常由点.线.面.体等几何元素和灰度.色彩.线型.线宽等非几何属性组成.计算机涉及到的几何图形处理一般有 2维到n维图形处理,边界区分,面积计算,体积计算,扭曲变形校正.对于颜色则有色彩空间的计算与转换,图形上色,阴影,色差处理等等. 在破解验证码中需要用