Введение
Сегодня мы узнаем, как сгенерировать QR-код на Python. QR означает быстрый отклик, и он получил свое название из-за того, насколько быстро его может прочитать мобильный телефон. Они используются на вашем телефоне для сбора и хранения данных с движущихся носителей. В этом руководстве показано, как создавать QR-коды с помощью Python.
Как сгенерировать QR-код на Python?
Для генерации QR-кодов мы будем использовать пакет Python QRCode и Tkinter для приложения с графическим интерфейсом. Вот команда pip, которую нужно использовать для установки этого пакета:
pip install qrcode
&
pip install tk
Теперь давайте посмотрим, как создать QR-код, используя язык программирования Python.
Шаг 1: Импорт библиотек Qrcode и Tkinter
import qrcode
from tkinter import *
Шаг 2: Создание основного окна
cp = Tk()
cp.title('dzen.ru/kalinkin')
cp.geometry('700x250')
cp.config(bg='#e52165')
На этом этапе мы создадим главное окно с заголовком, размером и цветом. Там, где мы задаем заголовку значение [dzen.ru/kalinkin], размер окна будет 700 × 250, а цвет фона будет ‘#e52165’.
Шаг 3: Создайте функцию, которая принимает любой текст или URL-адрес в качестве входных данных и генерирует QR-код
def generate():
img = qrcode.make(msg.get())
type(img)
img.save(f'{save_name.get()}.png')
Label(cp, text='File Saved!', bg='#e52165', fg='black', font=('Arial Black', 8)).pack()
def show():
img = qrcode.make(msg.get())
type(img)
img.show()
Мы должны импортировать модуль QRCode. Затем мы используем функцию qrcode.make() и передаем строку в качестве параметра. Эта строка поможет в генерации QR-кода с использованием процедуры. Полная конструкция QR будет сохранена в объекте image. Затем мы создадим объект IMG и используем img.save() для его сохранения. Когда изображение сохраняется, функция label используется для отображения всплывающего окна (‘Файл сохранен’), где save_name извлекается из фрейма ввода ‘Имя файла (сохранить как)’, где функция show() используется для отображения QR-кода.
Шаг 4: Создайте пользовательский интерфейс для приложения для генерации QR-кода на Python
frame = Frame(cp, bg='#e52165')
frame.pack(expand=True)
Python Tkinter служит контейнером для других компонентов. Прямоугольные участки экрана используются для организации компонентов приложения Python.
#------------------ENTER THE TEXT OR URL------------------
Label(frame, text='Enter the Text or URL : ', font=('Arial Black', 16),
bg='#e52165').grid(row=0, column=0, sticky='w')
msg = Entry(frame)
msg.grid(row=0, column=1)
Для начала мы должны установить поле ввода, чтобы получать текст, введенный пользователем. Для этого мы создали запись (frame), которая сохраняется в (msg), и сгенерировали для нее метку (‘Введите текст или URL’). Мы использовали функцию grid() для выравнивания поля ввода, метки и кнопок.
#------------------ENTER THE FILE NAME------------------
Label(frame, text='File Name(Save As) : ', font=('Arial Black', 16),
bg='#e52165').grid(row=1, column=0, sticky='w')
save_name = Entry(frame)
save_name.grid(row=1, column=1)
После этого мы создадим другое текстовое поле ввода для присвоения имени файлу QRCode. Для этого мы создали фрейм ввода и его объект ‘save_name’.
#------------------BUTTONS TO SHOW OR SAVE QRCODE------------------
btn = Button(cp, text='Show QR code', bd='5', command=show, width=15)
btn.pack()
btn = Button(cp, text='Save QR code', command=generate, bd='5', width=15)
btn.pack()
Мы разработали две кнопки. Первый используется для просмотра QR-кода; при нажатии он перенаправит на метод show(), который мы создали ранее, а второй используется для сохранения QR-кода; при нажатии он перенаправит на функцию generate().
Завершите код для генерации QR-кода на Python
import qrcode
from tkinter import *
cp = Tk()
cp.title('dzen.ru/kalinkin')
cp.geometry('700x250')
cp.config(bg='#e52165')
def generate():
img = qrcode.make(msg.get())
type(img)
img.save(f'{save_name.get()}.png')
Label(cp, text='File Saved!', bg='#e52165' , fg='black', font=('Arial Black', 8)).pack()
def show():
img = qrcode.make(msg.get())
type(img)
img.show()
frame = Frame(cp, bg='#e52165')
frame.pack(expand=True)
#------------------ENTER THE TEXT OR URL------------------
Label(frame, text='Enter the Text or URL : ', font=('Arial Black', 16),
bg='#e52165').grid(row=0, column=0, sticky='w')
msg = Entry(frame)
msg.grid(row=0, column=1)
#------------------ENTER THE FILE NAME------------------
Label(frame, text='File Name(Save As) : ', font=('Arial Black', 16),
bg='#e52165').grid(row=1, column=0, sticky='w')
save_name = Entry(frame)
save_name.grid(row=1, column=1)
#------------------BUTTONS TO SHOW OR SAVE QRCODE------------------
btn = Button(cp, text='Show QR code', bd='5', command=show, width=15)
btn.pack()
btn = Button(cp, text='Save QR code', command=generate, bd='5', width=15)
btn.pack()
cp.mainloop()
На Python мы успешно разработали генератор QR-кода. В этом руководстве мы научились использовать базовые виджеты модуля Tkinter и генерировать QR-код на Python с помощью модуля qrcode. Я надеюсь, вам понравится работать над этим проектом.
Надеюсь Вы уже подписаны на мой канал, что бы не упустить новые статьи которые могут быть Вам полезны. Спасибо!