Spaces:
Paused
Paused
| from random import choice, randint, randrange | |
| import qrcode | |
| from captcha.image import ImageCaptcha | |
| from Powers.database.captcha_db import CAPTCHA_DATA | |
| from Powers.utils.string import encode_decode | |
| captchaa = CAPTCHA_DATA() | |
| async def get_qr_captcha(chat, user, username): | |
| initial = f"t.me/{username}?start=qr_" | |
| encode = f"{chat}:{user}" | |
| encoded = await encode_decode(encode) | |
| final = initial + encoded | |
| qr = qrcode.make(final) | |
| name = f"captcha_verification{chat}_{user}.png" | |
| qr.save(name) | |
| return name | |
| def genrator(): | |
| alpha = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", | |
| "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"] | |
| rand_alpha = choice(alpha) | |
| if_ = randint(0, 1) | |
| new_alpha = rand_alpha.upper() if if_ else rand_alpha | |
| list_ = [new_alpha] | |
| while len(list_) != 4: | |
| xXx = randrange(0, 9) | |
| list_.append(xXx) | |
| str_ = "" | |
| while len(str_) != 4: | |
| OwO = choice(list_) | |
| str_ += str(OwO) | |
| return str_ | |
| async def get_image_captcha(chat, user): | |
| str_ = genrator() | |
| captchaa.load_cap_data(chat, user, str_) | |
| name = f"captcha_img_{chat}_{user}.png" | |
| image = ImageCaptcha(280, 90) | |
| cap = image.generate(str_) | |
| image.write(str_, name) | |
| return name, str_ | |