12345678910111213141516171819202122232425262728293031323334353637383940 |
- import telebot
- from qr import QR
- token = "5952079422:AAFyS7pEYSe6WBy9SE57e4JLSoBEGQVJuMc"
- bot = telebot.TeleBot(token)
- qr = QR()
- @bot.message_handler(commands=["start", "help"])
- def send_welcome(message):
- bot.reply_to(message,
- """
- Чтобы распознать QR просто отправьте фото! Будет обработано только последнее из набора фото.
- Если же вы хотите сгенерировать QR, то отправьте текст!
- """
- )
- @bot.message_handler(func=lambda message: True)
- def create_qr(message):
- bot.reply_to(message, "Генерируем QR...")
- (img, url) = qr.create(message.text)
- bot.reply_to(message, url)
- @bot.message_handler(content_types=["photo"])
- def read_photo(message):
- photo = message.photo[-1]
- fid = photo.file_id
- finfo = bot.get_file(fid)
- purl = f"https://api.telegram.org/file/bot{token}/{finfo.file_path}"
- bot.reply_to(message, "Распознаём QR-ы...")
- scans = qr.read_by_url(purl)
- if len(scans) == 0 :
- bot.reply_to(message, "Изображение не содержит QR, либо их плохо видно!")
- else:
- for scan in scans :
- bot.reply_to(message, scan)
- bot.infinity_polling()
|