首页 > 编程语言 >Python之QRCode

Python之QRCode

时间:2024-08-24 12:04:55浏览次数:7  
标签:qr img Python qrcode QRCode logo icon size

方法一:

生成二维码

import qrcode
# 生成二维码
img = qrcode.make(data="你好")
# 将二维码保存为图片
with open('qrcode_test.png', 'wb') as f:
    img.save(f)

解码二维码


import cv2
d=cv2.QRCodeDetector()
val,_,_ = d.detectAndDecode(cv2.imread('qrcode_test.png'))   # 绝对路径也可
print('text is:',val)

方法二

import qrcode

qr = qrcode.QRCode(
    version=5,
    error_correction=qrcode.constants.ERROR_CORRECT_L,
    box_size=10,
    border=4,
)

qr.add_data('https://editor.csdn.net/')

qr.make(fit=True)
img = qr.make_image()
filename = 'qrcode.png'
img.save(filename)
img.show()

方法三:生成带有图片的二维码

from PIL import Image
import qrcode

qr = qrcode.QRCode(
    version=5,
    error_correction=qrcode.constants.ERROR_CORRECT_L,
    box_size=10,
    border=4,
)
qr.add_data('https://www.cnblogs.com/nthforsth/')
qr.make(fit=True)

img = qr.make_image()
img = img.convert("RGBA")

# 添加logo,打开logo照片
icon = Image.open(r"D:\Work\ProjectItems\Restframework_Test\DRFdemo\files\image\1721713687503.png")

  # 获取图片的宽高
img_w, img_h = img.size
# 参数设置logo的大小
factor = 4
size_w = int(img_w / factor)
size_h = int(img_h / factor)
icon_w, icon_h = icon.size
if icon_w > size_w:
    icon_w = size_w
if icon_h > size_h:
    icon_h = size_h

# 重新设置logo的尺寸
icon = icon.resize((icon_w, icon_h), Image.Resampling.LANCZOS)

# 得到画图的x,y坐标,居中显示
w = int((img_w - icon_w) / 2)
h = int((img_h - icon_h) / 2)
icon = icon.convert("RGBA")

# 黏贴logo照
img.paste(icon, (w, h),icon)
img.show()
img.save('icon_qrcode.png')

标签:qr,img,Python,qrcode,QRCode,logo,icon,size
From: https://www.cnblogs.com/jackchen28/p/18377611

相关文章

  • 计算机毕业设计推荐-基于python的医院预约门诊平台
    精彩专栏推荐订阅:在下方专栏......
  • 计算机毕业设计推荐-基于python的无人超市管理系统
    精彩专栏推荐订阅:在下方主页......
  • Python小白自用学习日记 | print和input函数(参考“Python_子木”的教程)&pandas的下载
            写论文要分析气象数据,下载后发现是txt格式,看来要学学python做数据处理。真是“书到用时方恨少”。我看的是B站“Python_子木”的教程。电脑里以前装过了VScode,就暂时不下载pycharm了。        仅作为一个超级小白的养成系学习日记吧。大佬们请不用点......
  • 下载小说时,python字符集编码utf-8和GBK的错误处理(慎!)
    创作背景  今天想找本小说看,但是居然只能在网页上能找到资源,作为一名测试工程师,这能忍?多么严重的体验,这还能一起愉快的玩耍了吗?还能好好摸鱼了吗?  果断花点时间,查看页面结构,写个脚本自动请求网页,获取小说内容,并进行储存到本地txt文件中,放在手机里,躺在床上慢慢看。没......
  • python Logging 模块的日志参数配置及使用
    官方文档查看路径:logging---Python的日志记录工具—Python3.12.5文档步骤一:先建立log.conf文件步骤二:在基类文件中引用log.conf文件,并创建Logger日志记录器--步骤一-----------------------log.conf文件配置信息[loggers]keys=root,infoLogger[logger_root......
  • 十大免费的Python爬虫APP!再也不用开那么多会员了!
      在探讨十大网络爬虫免费App时,需要注意的是,并非所有提到的工具都完全免费或以App形式存在。不过,我可以根据当前可用的信息和市场情况,列出一些广受欢迎且部分功能可能免费的网络爬虫工具或软件,尽管其中一些可能主要是桌面应用或框架。以下是按照您的要求整理的列表:1.八爪......
  • Python编码系列—Python单元测试的艺术:深入探索unittest与pytest
    ......
  • Python脚本
    1.对目录下的文件进行分类,并根据文件后缀,将相应文件移动或拷贝至对应目录importsysimportosimportshutildefget_file_extension(filename):_,file_extension=os.path.splitext(filename)iffile_extension.startswith('.'):returnf......
  • Python的OpenCV转换图像大小
    在Python中,使用OpenCV库来转换图像大小是一个常见的操作,它可以帮助你调整图像到特定的尺寸,以适应不同的应用场景,比如图像预处理、模型输入等。下面是一个详细的代码示例,展示了如何使用OpenCV来转换图像的大小。首先,确保你已经安装了OpenCV库。如果还没有安装,可以通过pip安装:bash......
  • 【Python字典简析】
    Python字典简析Python字典(Dictionary)是一种可变的数据结构,用于存储键值对(key-valuepairs)。它具有以下特点:无序性:在Python3.6之前的版本中,字典是无序的,但3.7及之后版本中,字典是按照插入顺序存储的。可变性:字典的内容可以被修改。唯一性:字典中的键是唯一的。键必须是......