Hiện nay QR Code đã trở lên phổ biến ở mọi ngành nghề. Các thiết bị đọc mã vạch có thể đọc và truy xuất thông tin từ mã vạch. Điều mà các bạn sẽ ngạc nhiên là mã vạch QR Code có thể tạo ra khá dễ dàng, và được hỗ trợ bởi các thư viện của nhiều ngôn ngữ. Trong bài viết này vinasupport.com sẽ hướng dẫn các bạn tạo mã QR Code cực kỳ đơn giản với Python 3.
QR Code là gì?
Mã QR (một ký hiệu viết tắt cho quick response code) là một loại mã vạch ma trận (hoặc mã vạch hai chiều) được phát minh vào năm 1994 bởi công ty Denso Wave của Nhật Bản. Mã vạch là một nhãn quang học có thể đọc được bằng máy có thể chứa thông tin về mặt hàng mà nó được gắn vào.
Cài đặt thư viện qrcode trong Python
Để tạo ra mã QR Code, chúng ta sử dụng thư viện qrcode được cài đặt rất dễ dàng với chỉ 1 dòng lệnh pip
pip install qrcode
Ngoài ra các bạn cần cài thêm cả thử viện Image để xuất ảnh nữa
pip install Image
Hướng dẫn tạo mã QR Code với Python
Đầu tiên chúng ta phải import thư viện vào
# Importing library import qrcode
Sau đó tạo dữ liệu để mã hóa
# Data to be encoded data = 'Hello world. We are vinasupport.com team'
Sau đó thực hiện mã hóa dữ liệu
# Encoding data using make() function img = qrcode.make(data)
Cuối cùng xuất ra file QR Code
# Saving as an image file img.save('vinasupport.png')
Kết quả:
Bạn hãy thử mở ứng dụng đọc QR Code từ điện thoại xem có đúng thứ mình mong muốn ko nhé!
Tổng kết đoạn code của chúng ta sẽ là:
# Importing library import qrcode # Data to be encoded data = 'Hello world. We are vinasupport.com team' # Encoding data using make() function img = qrcode.make(data) # Saving as an image file img.save('vinasupport.png')
Ngoài ra chúng ta có thể thay đổi kích thước, tô màu như sau:
# Importing library import qrcode # Data to encode data = "vinasupport.com is the best IT Website" # Creating an instance of QRCode class qr = qrcode.QRCode(version=1, box_size=10, border=5) # Adding data to the instance 'qr' qr.add_data(data) qr.make(fit=True) img = qr.make_image(fill_color='red', back_color='white') img.save('vinasupport-2.png')
Kết quả:
Nguồn: vinasupport.com