• python 验证码识别


    一、python识别简单验证码:

      代码: 

     1 '''
     2     func:实现简单验证码获取
     3 '''
     4 import pytesseract
     5 from PIL import Image
     6 
     7 #首先通过Image打开一个图片
     8 image=Image.open('code1.jpg')
     9 # #然后通过方法将image对象转化为字符串
    10 # code=pytesseract.image_to_string(image)
    11 # print(code)
    12 
    13 #出现错误,需要将图片进行灰度转化和二值处理
    14 image=image.convert('L')
    15 # image2=image1.convert('1')
    16 # image1.show()
    17 #这里设定需要处理的阈值
    18 threshold = 130
    19 table = []
    20 for i in range(256):
    21     if i < threshold:
    22         table.append(0)
    23     else:
    24         table.append(1)
    25 image=image.point(table,'1')
    26 image.show()
    27 code=pytesseract.image_to_string(image)
    28 print(code)

    二、处理极验滑动验证码:

      1、步骤:

        ·模拟点击验证按钮。 --可以通过selenium来完成。

        ·识别滑动缺口的位置。--需要用图像处理的方法来完成。

        ·模拟拖动滑块。 --

    '''
    func:实现简单验证码获取
    '''
    import pytesseract
    from PIL import Image

    #首先通过Image打开一个图片
    image=Image.open('code1.jpg')
    # #然后通过方法将image对象转化为字符串
    # code=pytesseract.image_to_string(image)
    # print(code)

    #出现错误,需要将图片进行灰度转化和二值处理
    image=image.convert('L')
    # image2=image1.convert('1')
    # image1.show()
    threshold = 130
    table = []
    for i in range(256):
    if i < threshold:
    table.append(0)
    else:
    table.append(1)
    image=image.point(table,'1')
    image.show()
    code=pytesseract.image_to_string(image)
    print(code)

  • 相关阅读:
    France '98
    【笔记】《通俗详细地讲解什么是P和NP问题》的概念记录
    130831组队赛-Regionals 2011, Asia
    Android 解屏幕锁与点亮屏幕
    Android 点亮屏幕
    利用FFT 计算生成离散解析信号
    hdu5246 超级赛亚ACMer
    用srvctl命令配置service
    MySQL优化之——权限管理
    JS 点击复制Copy插件--Zero Clipboard
  • 原文地址:https://www.cnblogs.com/monty12/p/10004051.html
Copyright © 2020-2023  润新知