Телеграмм бот по генерация qr кодов
Дело в том что мой бот генерировал qr коды, вот его исходный код
import os
from typing import Union
import qrcode
from qrcode import constants
def make_image_qrcode(data: Union[int, str]) -> str:
"""
Формирует QRCode из входных данных и сохраняет в временных файлах.
:return: Путь до qrcode
"""
code = str(data)
format = '.png'
image_title = f'{data}{format}'
dir = f'data{os.sep}tmp{os.sep}{image_title}'
qr = qrcode.QRCode(
version=1,
error_correction=constants.ERROR_CORRECT_M,
box_size=20,
border=2
)
qr.add_data(data)
image = qr.make_image()
image.save(f'{dir}')
return dir
но мне нужен стал barcode и вот его код
import os
from typing import Union
import barcode
from barcode.writer import ImageWriter
def make_image_qrcode(data: Union[int, str]) -> str:
"""
Формирует QRCode из входных данных и сохраняет в временных файлах.
:return: Путь до qrcode
"""
try:
code = str(data)
ean = barcode.get('ean13', code, writer=ImageWriter())
filepath = (f'data{os.sep}tmp{os.sep}{code}')
except (barcode.errors.IllegalCharacterError, barcode.errors.NumberOfDigitsError) as e:
return print(e) # Выводит в консоль ошибку, если ввод не по EAN13
image = barcode.make_image()
ean.save(f'{filepath}')
return filepath
Дело в том что он перестал отправлять мне фото qr кода, а ошибка в 'NoneType' object has no attribute 'read' Что делать? Бот написан на aiogram