QR-коды, метод 1
Код QR (Quick Response) — это двухмерный код, содержащий информацию. Фактически, он может хранить больший объем информации, чем даже штрих-коды. Как правило, это пиксельный блок, черно-белый (черные пиксели на белом фоне). На самом деле QR-коды используются всевозможными организациями и фирмами для хранения большого количества данных о себе для своих клиентов. Итак, допустим, вы проходили мимо компании и хотели узнать о ней больше. Предположим также, что у них был QR-код на рекламном щите или визитной карточке. Как правило, вы отсканируете QR-код и получите доступ к хранящейся в нем информации. Затем мы спрашиваем, как мы можем записать информацию в QR-код? Что ж, это легкая часть; мы можем легко сделать это с помощью Python. В этом разделе мы узнаем, как сгенерировать QR-коды с помощью Python.
Первое, что нужно сделать, это установить qrcode. Также нам необходимо установить подушку для генерации изображения.
После того, как мы его установили, мы импортируем его.
import qrcode
Затем мы определяем веб-сайт или информацию, которую хотим сохранить в QR-коде.
h_url = """
www.google.com
This is a search engine. Another great search engine is
www.duckduckgo.com """
Теперь мы определяем переменную qr как qrcode.QRCode (), которая принимает не более 4 аргументов — версию, исправление ошибок, размер поля и границу. Параметр версии представляет собой размер QR-кода и находится в диапазоне от 1 до 40. Параметр размера блока, в частности, представляет собой размер каждого блока в пикселях. Параметр границы определяет толщину границы. Параметр исправления ошибок определяет контроль ошибок для QR-кода.
qr = qrcode.QRCode(
version=1,
error_correction=qrcode.constants.ERROR_CORRECT_L,
box_size=20,
border=4,
)
После создания переменной qr мы добавляем информацию, которую хотим сохранить в ней, с помощью qr.add_data (). Для этого нужен один аргумент — информация, которую нужно добавить в QR-код.
qr.add_data(h_url)
qr.make(fit=True)
Затем мы создаем изображение и используем fill_color и back_color, чтобы определить цвета, которые мы хотим сделать для наших пикселей и фона. Однако здесь мы можем изменить цвета на RGB, если захотим.
image = qr.make_image(fill_color="black", back_color="white")
# image = qr.make_image(fill_color=(0,0,225), back_color=(125, 211, 124))
Наконец, чтобы сохранить сгенерированный QR-код, мы используем save (), сохраняя его в каталоге python. Лучше всего хранить его как изображение png.
image.save("qrcode.png")
Весь код будет выглядеть примерно так:
import qrcode
h_url = """
www.google.com
This is a search engine. Another great search engine is
www.duckduckgo.com """
qr = qrcode.QRCode(
version=1,
error_correction=qrcode.constants.ERROR_CORRECT_L,
box_size=20,
border=4,
)
qr.add_data(h_url)
qr.make(fit=True)
image = qr.make_image(fill_color="black", back_color="white")
image.save("qrcode.png")
QR-коды, метод 2
Есть много модулей для генерации QR-кодов! В этом примере мы будем использовать FoxHustle-QR.
Сначала установите его, используя:
pip install FoxHustle-QR
Полный код занимает всего три строки:
import FoxHustle_QR
QRGen = FoxHustle_QR.QRGenerator()
link = QRGen("https://www.duckduckgo.com", qr="colored light")
link.save('qrcode5.png')
В этом модуле требуется всего три строки кода вместо 10. Здесь мы использовали метод QRGenerator () для достижения этой цели. Затем мы передаем в QRGen два аргумента — контент, который вы хотите сохранить в QR-коде, и тип qr. Имейте в виду, что этот модуль дает QR-коды, которые иногда трудно декодировать с помощью декодеров QR-кодов.
QR-код, метод 3
Еще один генератор QR-кода (среди множества их) — qr-img.
Для начала установим нужный нам модуль:
Затем мы можем создать QR-код, используя следующий код:
import qr_img
image = "enemy.png"
out_image = "qrcode6.png"
data = "www.duckduckgo.com"
name = "Kalyani" # this can be anything, it’s there just for fun
saved = qr_img.qrpic(name, image, data, out_image)
print(saved)
Это генерирует QR-код с изображением в центре (в моем случае «own.png»). Немного необычно, но тем не менее работает. Здесь изображение — это изображение, которое вы хотите разместить в центре QR-кода. Out_image — это расположение и имя выходного изображения или QR-кода. Данные — это данные, которые вы хотите поместить в QR-код. И имя — это любое слово, какое захотите; это просто для удовольствия. Затем используйте метод qrpic () для генерации QR-кода, передав 4 аргумента — имя, изображение, данные и out_image.
QR-код декодер
Как бы здорово ни было создавать QR-коды, которые могут считывать телефонные приложения, было бы здорово создать декодер. Декодер QR-кода используется для чтения информации, содержащейся в QR-коде.
Для начала установим нужный нам модуль:
Затем мы декодируем с помощью метода qr_decode () и распечатываем его.
import qr_img
image = "qrcode.png"
text = qr_img.qr_decode(image)
print(text)
Обратите внимание, что это не работает с QR-кодами, созданными с помощью метода 2.
Штрих-коды
Штрих-код — это многострочный объект, который мы все видим практически на всем. Это то, что мы видим на наших пищевых продуктах, на продуктах, купленных в магазинах, и практически на всем, что мы можем купить. Эти штрих-коды, как и QR-коды, хранят информацию. Однако проблема со штрих-кодами заключается в том, что они ограничены примерно 20 буквенно-цифровыми символами. Здесь QR-коды — это решение проблемы. В этом разделе мы узнаем, как создавать штрих-коды с помощью Python.
Во-первых, начнем с установки модуля штрих-кода:
pip install "python-barcode[images]"
Этот конкретный модуль предлагает 11 различных типов штрих-кодов: EAN-8, EAN-13, EAN-14, UPC-A, JAN, ISBN-10, ISBN-13, ISSN, Code 39, Code 128 и PZN. В этом примере мы собираемся использовать EAN-13.
Чтобы сгенерировать штрих-код, нам нужно всего три строки кода:
import barcode
ean = barcode.get_barcode_class('ean13')
ean2 = ean('4502264821487')
ean2.save('barcode')
Здесь метод save используется для сохранения штрих-кода в изображение, и он принимает единственный аргумент — имя штрих-кода, который вы хотите сохранить. Эти три строки кода создают так называемый файл svg.
Но предположим, что вы хотите вместо изображения png, тогда используйте следующий код:
from barcode.writer import ImageWriter
import barcode
ean = barcode.get_barcode_class('ean13')
ean2 = ean('7581631153487', writer=ImageWriter())
ean2.save('barcode2')
И штрих-коды, и QR-коды широко используются для хранения информации о продукте, компании или другом материале. Разница между штрих-кодом и QR-кодом заключается в том, что QR-код может хранить примерно в 350 раз больше информации, чем штрих-код, и поэтому более широко используется в наши дни. В этом руководстве мы узнали, как с помощью Python создавать штрих-коды и QR-коды. Теперь вы можете создавать свои собственные штрих-коды и QR-коды для своих целей!
Удачного кодирования!
2021-10-20T00:02:16
Python