iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python 使用MyQR和qrcode来制作二维码
  • 573
分享到

python 使用MyQR和qrcode来制作二维码

python制作二维码pythonMyQRpythonqrcode 2022-06-02 22:06:20 573人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

前言   今天下午无聊,突发奇想想玩玩二维码,于是就结合着上学期学的标识技术,用python制作了一下二维码。 一、二维码   二维码( 2 − D i

前言

  今天下午无聊,突发奇想想玩玩二维码,于是就结合着上学期学的标识技术,用python制作了一下二维码。

一、二维码

  二维码( 2 − D i m e n s i o n a l (2-Dimensional(2−Dimensional B a r c o d e ) Barcode)Barcode),又称二维条形码。它是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形来记录数据符号信息的;在代码编制上巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理。

  一维条形码,就是我们日常所说的条形码( B a r c o d ) (Barcod)(Barcod),常见于食品包装上。它是将宽度不等的多个黑条和空白,按一定的编码规则排列,用以表达一组信息的图形标识符。常见的一维条形码是由黑条(简称条)和白条(简称空)排成平行线图案。条形码可以标出物品的生产国、制造厂家、商品名称、生产日期以及图书分类号、邮件起止地点、类别、日期等信息。
  通常一维条形码所能表示的字符集不过10个数字、26个英文字母及一些特殊字符,条码字符集最大所能表示的字符个数为128个ASCII字符,信息量非常有限。

  二维码有其特定的字符集,每个字符占有一定的宽度,每种码具有一定的校验功能,同时还具有对不同行的信息自动识别功能、及处理图形旋转变化等特点。
  二维条形码是在二维空间水平和竖直方向存储信息的条形码。它的优点是信息容量大,译码可靠性高,纠错能力强,制作成本低,保密与防伪性能好。

目前,世界上应用最多的二维条码符号有Aztec Code、pdf147、QR Code等。

常见的二维码为QR CodeCode,QR全称是Quick Response,是一个近几年来移动设备上超流行的一种编码方式。它的结构如下:

QR Code属于矩阵式二维条码,又称棋盘式二维条码。它是在一个矩形空间通过黑、白像素在矩阵中的不同分布进行编码。在矩阵相应元素位置上,用点(方点、圆点或其他形状)的出现表示二进制“1”,点的不出现表示二进制的“0”,点的排列组合确定了矩阵式二维条码所代表的意义。
主要有以下特点:

  • 符号规格从版本1(21×21)到版本40(177×177),每提高一个版本,每边增加 4 个码元(即指构成 QR 码的方形黑白点);
  • 信息容量大:能存储 7089 个数字字符或 4296 个字母字符或 2953 个 8 位字节字符或 1817 汉字字符;
  • 纠错能力强:即使部分编码变脏或破损,也可以恢复数据。L级约可纠错 7% 的数据码字,M级约可纠错 15% 的数据码字,Q级约可纠错25%的数据码字,H级约可纠错 30% 的数据码字;
  • 可以从任意方向读取:QR码可以从 360° 任一方向均可快速读取。通过 QR 码中的三处定位图案,可以帮助 QR 码不受背景样式的影响,实现快速稳定的读取。

二、MyQR

MyQR可以生成常见的二维码、艺术二维码(黑白或彩色),动态二维码(黑白或彩色),安装命令如下:


pip install MyQR -i Http://pypi.douban.com/simple --trusted-host pypi.douban.com

更多详细内容可以参考官方文档:https://GitHub.com/sylnsfar/qrcode

代码如下


if __name__ == '__main__':
    version, level, qr_name = myqr.run(
        Words='https://blog.csdn.net/qq_42730750',
        version=1,
        level='H',
        picture='./XKD.gif',
        colorized=True,
        contrast=1.0,
        brightness=1.0,
        save_name='test4.gif',
        save_dir=os.getcwd()
    )
    print(version)
    print(level)
    print(qr_name)

  这是我生成的几个二维码:

MyQR确实是挺好用的,唯一的缺点就是,不支持中文!!!没错,是不是有点遗憾,它只支持以下字符:

  • 数字 0 到 9
  • 大小写的英文字母
  • 常用英文标点符号和空格

三、qrcode

qrcode的功能虽稍逊于MyQR,但是它支持中文字符,且能生成矢量图,安装命令如下:


pip install qrcode -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

官方文档 github 网址:https://github.com/lincolnloop/Python-qrcode

生成二维码代码如下:


def mergeImg(img1, img2, flag=True):
    """
    合并图像
    :param img1:
    :param img2:
    :param flag: True 表示将loGo居中, False 表示将logo作为背景图
    :return:
    """
    img1_w, img1_h = img1.size
    if flag:
        img2_w = int(img2.size[0] / 3)
        img2_h = int(img2.size[1] / 3)
        # 缩放logo
        img2 = img2.resize(size=(img2_w, img2_h), resample=Image.ANTIALIAS)
        # 将logo居中显示
        img1.paste(im=img2, box=(int((img1_w - img2_w) / 2), int((img1_h - img2_h) / 2)))
        img1.save('./test8.png')
    else:
        img2 = img2.resize(size=(img1_w, img1_h), resample=Image.ANTIALIAS)
        # 两张图片的size和mode要一致
        # 计算公式为out = image1 * (1.0 - alpha) + image2 * alpha
        # 这里的背景色就是一种干扰了, 如果将二维码的透明度设置过高会识别不出来
        out_img = Image.blend(img1, img2, alpha=0.3)
        out_img.save('./test9.png')


if __name__ == '__main__':
    qr = qrcode.QRCode(
        version=1,
        error_correction=qrcode.constants.ERROR_CORRECT_H,
        box_size=10,
        border=4,
    )
    qr.add_data('这是我的博客地址: https://blog.csdn.net/qq_42730750')
    qr.make(fit=True)

    # black green purple orange pink white blue
    # make_image() 返回的是一个PilImage对象
    # 可以使用pillow对它进行图像处理相关的操作
    # img1 = qr.make_image(fill_color="#8A2BE2", back_color="white")
    img1 = qr.make_image(fill_color="orange", back_color="white").convert('RGB')
    # img1.show()
    # img1.save('./test6.png')

    img2 = Image.open('./cutcamera.png').convert('RGB')
    mergeImg(img1, img2, flag=True)

  这是我生成的几个二维码:

注:文中生成的二维码均绿色、健康,仅用作学习之用,可以放心扫。

以上就是python 使用MyQR和qrcode来制作二维码的详细内容,更多关于python用MyQR和qrcode来制作二维码的资料请关注编程网其它相关文章!

--结束END--

本文标题: python 使用MyQR和qrcode来制作二维码

本文链接: https://www.lsjlt.com/news/10598.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python如何使用MyQR和qrcode来制作二维码
    这篇文章将为大家详细讲解有关python如何使用MyQR和qrcode来制作二维码,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Python的优点有哪些1、简单易用,与C/C++、Java、C# 等传统语...
    99+
    2023-06-15
  • Python第三方库qrcode或MyQr生成博客地址二维码
    目录前期准备qrcodeMyQR安装第三方库代码运行效果前期准备 qrcode 下载地址: qrcode · PyPI QR Code image generator https:/...
    99+
    2024-04-02
  • 使用composer安装和使用Endroid/QrCode来生成二维码
    安装composer 使用composer命令安装Endroid/QrCode composer require endroid/qr-code 实现代码 //生成二维码的功能无非就是:/二维码上的内容、二维码的尺寸大小、二维码上的LOGO...
    99+
    2023-09-17
    composer php
  • 利用Python 制作二维码
    目录1、QRCode    生成这个二维码只用三行2、安装导入QRCode3、QRCode 多种自定义方法4、生成添加logo的二维码5、MyQR&nb...
    99+
    2024-04-02
  • python应用之qrcode生成二维码的示例
    本文将为大家详细介绍“python应用之qrcode生成二维码的示例”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“python应用之qrcode生成二维码的示例”能够给你意想不到的收获,请大家跟着小编的思路慢...
    99+
    2023-06-06
  • ThinkPHP6中使用最新版本Endroid/QrCode生成二维码
    目录 前言 一、使用composer下载扩展包 二、实现代码及方法注释 三、效果(扫码会跳转到百度) 前言 TP现用的、用composer包管理的生成二维码的工具包,带来和原生PHP使用qrcode差距不大的体验。不多说,看代码。 一、...
    99+
    2023-09-02
    php composer 后端
  • 怎样用Python制作动态二维码
    这篇文章给大家介绍怎样用Python制作动态二维码,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。如何做到用一行代码实现动态二维码的制作?用法比较简单,直接通过pip安装即可pip3 install ...
    99+
    2023-06-02
  • “如何在PHP和Git中使用NPM制作二维码?”
    如何在PHP和Git中使用NPM制作二维码? 二维码的应用越来越广泛,不论是商家在广告中使用二维码来提供更多信息,还是个人在社交媒体上分享自己的联系方式。在本文中,我们将介绍如何使用NPM在PHP和Git中制作二维码。 NPM是一个包管理器...
    99+
    2023-09-07
    git 二维码 npm
  • Python IDE中如何使用二维码来提高工作效率?
    二维码是一种方便快捷的信息传递方式,可以通过扫描二维码获取到对应的信息。在Python开发中,我们也可以通过使用二维码来提高我们的工作效率。本文将介绍如何在Python IDE中使用二维码来提高工作效率。 一、安装二维码生成库 Pytho...
    99+
    2023-10-30
    ide 数据类型 二维码
  • 如何在 Python 中使用容器来解码二维码?
    二维码已经成为了我们生活中不可或缺的一部分,我们可以在各种场景中看到它们的身影。二维码的应用越来越广泛,从商业领域到生活领域,都有着广泛的应用。在 Python 中,我们可以使用容器来解码二维码。 在 Python 中,我们可以使用第三方...
    99+
    2023-08-22
    关键字 二维码 容器
  • 在 Python 中使用哪些关键字来操作二维码容器?
    在现今数字化的社会中,二维码已经成为了一种非常重要的信息交流方式。Python 作为一种流行的编程语言,自然也提供了很多操作二维码的方式。本文将介绍在 Python 中使用哪些关键字来操作二维码容器。 首先,我们需要安装一个第三方库来生成和...
    99+
    2023-08-22
    关键字 二维码 容器
  • Python如何使用qrcode生成指定内容的二维码并在GUI界面显示
    目录前言1.下载所需的模块2.生成指定内容的二维码3.加载二维码到GUI窗口上显示4.全部代码展示5.运行结果展示总结 前言 现如今我们生活在一个二维码的时代,生活中处处都...
    99+
    2024-04-02
  • 如何在 Python 中使用二维码来填充容器?
    二维码是一种广泛使用的矩阵条码,它可以存储大量信息,并且易于扫描。在 Python 中,我们可以使用第三方库来生成二维码,并将其填充到容器中,以便在应用程序中使用。在本文中,我们将介绍如何在 Python 中使用二维码来填充容器,以及如何...
    99+
    2023-08-22
    关键字 二维码 容器
  • Python中如何使用异步编程来生成二维码?
    Python是一门非常流行的编程语言,它拥有强大的异步编程能力。在本文中,我们将会介绍如何使用Python中的异步编程来生成二维码。 首先,我们需要先安装一个Python库,它叫做“qrcode”。通过这个库,我们可以很容易地生成二维码。如...
    99+
    2023-08-15
    数据类型 异步编程 二维码
  • Python和git的二维码对象:如何使用?
    二维码在现代社会中越来越普及。它们被广泛用于商业和个人用途,例如在商品上放置二维码以扫描以获取更多信息,或将二维码用于个人名片。在使用二维码时,Python和git都是非常有用的工具。本文将介绍如何使用Python和git来创建、读取和操...
    99+
    2023-08-13
    git 二维码 对象
  • Python IDE中如何处理和操作二维码?
    二维码(QR Code)是一种快速识别的矩阵条码,广泛应用于各种场景中,例如商业营销、移动支付、物流追踪等等。在Python IDE中,我们可以使用一些库来处理和操作二维码,下面我们来详细介绍一下。 安装QR Code库 Python...
    99+
    2023-10-30
    ide 数据类型 二维码
  • 如何使用 Python 生成二维码?
    随着移动设备的普及,二维码已经成为了一种非常方便的信息传递方式。在本文中,我们将介绍如何使用 Python 生成二维码。 Python 是一种非常流行的编程语言,它有着强大的功能和广泛的应用场景。使用 Python 生成二维码非常简单,只...
    99+
    2023-08-27
    二维码 bash npm
  • Python和Apache:如何制作二维码并将其嵌入Linux环境中?
    二维码是一种二维条形码,可以在嵌入式系统、智能手机等设备上使用。它可以存储更多的信息,如URL、文本、电话号码等。在本文中,我们将介绍如何使用Python和Apache在Linux环境中制作二维码。 安装Python和Apache 在...
    99+
    2023-07-23
    linux apache 二维码
  • 怎么利用小程序的canvas来绘制二维码
    本篇文章给大家分享的是有关怎么利用小程序的canvas来绘制二维码,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。在微信小程序的业务中会有一些需要展示二维码的场景。静态二维码可以...
    99+
    2023-06-26
  • 如何在ASP.NET Core中使用NumPy和二维码库来生成QR码?
    在现代的软件开发中,二维码是一个非常有用的工具。它们可以用于各种不同的应用,例如将信息嵌入到图像中、用于支付等等。在本文中,我们将介绍如何在ASP.NET Core中使用NumPy和二维码库来生成QR码。 NumPy是一个用于数学计算的Py...
    99+
    2023-08-26
    numy 二维码 numpy
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作