نحوه ساخت Captcha در پایتون

تصویر
عکس پروفایل manushifva Hacker Noon

Captcha با گذشت زمان پیچیده و غیر عملی می شود. به عنوان مثال:

تصویر

بنابراین ، من خودم را وقف ساختن سیستم کپچای خودم کردم که عملی تر است. در ابتدا ، من به ایده ای برای کپچا احتیاج داشتم ، و اینجا این است:

تصویر

من برای ساخت سیستم captcha از پایتون استفاده کردم. این قطعه است:

import random, string
from PIL import Image, ImageDraw
import numpy as np

bomb = Image.open("bomb.png")

bomb = bomb.resize((round(bomb.size[0] * 0.5), round(bomb.size[1] * 0.5)))
bombMask = bomb.convert("L")

lock = Image.open("lock.png")
lock = lock.resize((round(lock.size[0] * 0.5), round(lock.size[1] * 0.5)))
lockMask = lock.convert("L")

def randomName():
    strData = string.ascii_letters + string.digits
    response = ''
    for x in range(16):
        response += random.choice(strData)

    return response

def buildCaptcha():
    bgColor = (random.randint(200, 255), random.randint(200, 255), random.randint(200, 255))
    img = Image.new('RGB', ((bomb.size[0]) * 5 + (40 * 6), bomb.size[1] + round(bomb.size[1] * 1.5)), color = bgColor)

    result = []
    posX = 40
    maxHeight = 0
    for x in range(5):
        num = random.randint(1, 2)

        rotateDeg = random.randint(0, 360)
        if (num == 1):
            result.append(0)
            thisImg = bomb.rotate(rotateDeg, expand=1)
          ...