返回顶部
首页 > 资讯 > 后端开发 > Python >基于Python实现在线二维码生成工具
  • 633
分享到

基于Python实现在线二维码生成工具

2024-04-02 19:04:59 633人浏览 独家记忆

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

摘要

目录1.环境搭建2.二维码生成功能的封装3.网页应用的搭建在今天的教程中,费老师我将为大家展示如何通过纯python编程的方式,开发出一个网页应用,从而帮助用户直接通过浏览器访问,即

在今天的教程中,费老师我将为大家展示如何通过纯python编程的方式,开发出一个网页应用,从而帮助用户直接通过浏览器访问,即可基于输入的网址等文字内容,完成常规二维码、静态底图二维码以及动图底图二维码的快捷生成,先来看一看应用的主要功能操作演示:

只写Python开发这样精致的工具应用非常简单,下面我来带大家从搭建环境开始,学习整个过程:

1.环境搭建

首先我们来创建应用的虚拟开发环境,建议使用Conda,命令如下:

创建虚拟环境并激活

conda create -n dash-qr-generator python=3.8 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ -y

conda activate dash-qr-generator

安装相关依赖

为了可以纯Python快速开发我们的应用,我们需要安装dash及我的开源组件库feffery-antd-components,另外还需要安装用于二维码生成的第三方库amazing-qr,全部安装命令如下:

pip install dash feffery-antd-components amzqr

全部执行完成后我们的应用开发运行环境就准备好了~,接下来只需要在本文附件解压后的根目录执行python app.py,接着访问本机的127.0.0.1:8050网址即可使用我们的应用。

2.二维码生成功能的封装

因为使用到amazing-qr这个库来进行常规二维码或自定义底图二维码的生成,为了方便在应用中快速调用,我们可以对其进行简单封装,由于amazing-qr在指定底图素材时不能设置目录,只能使用当前工作目录中的图片,因此我们需要在生成图片前切换工作目录到素材所在的目录,并在生成二维码结束后还原先前的工作目录:

utils.py

import os
from amzqr import amzqr
from pathlib import Path

def generate_qr(mode: str = 'default',
                Words: str = None,
                version: int = None,
                level: str = None,
                picture_dir: str = None,
                picture: str = None,
                contrast: float = None,
                brightness: float = None,
                save_name: str = None,
                save_dir: str = None):
    '''
    用于控制二维码图片的生成
    :param mode: 模式,可选的有default(常规二维码static(静态底图)和motion(动态底图),默认为default
    :param words: 二维码需要嵌入的信息
    :param version: 边长大小,取值在1到40之间,越大图片越精细
    :param level: 纠错水平,可选的有L、M、Q、H,从左往右越大越精准
    :param picture_dir: 底图文件的绝对路径
    :param picture: 底图文件名
    :param contrast: 对比度,取值在0到1之间
    :param brightness: 亮度,取值在0到1之间
    :param save_name: 导出文件名
    :param save_dir: 导出文件绝对路径
    :return:
    '''

    # mode: default
    if mode == 'default':

        _ = amzqr.run(
            words=words,
            version=version,
            level=level,
            save_name=save_name,
            save_dir=save_dir
        )

    # mode: static | motion
    elif mode == 'static' or mode == 'motion':

        origin = Path().absolute()

        os.chdir(Path('caches', picture_dir))

        _ = amzqr.run(
            words=words,
            version=version,
            level=level,
            picture=picture,
            colorized=True,
            contrast=contrast,
            brightness=brightness,
            save_name=save_name,
            save_dir=os.getcwd()
        )

        os.chdir(origin)

3.网页应用的搭建

在前面二维码生成函数编写完成的基础上,下面进入我们的重点——搭建网页应用,得益于dash中构建交互式网页应用的简单性和极高的自由度(远高于streamlit等玩具库),配合我的开源组件库框架facHttps://GitHub.com/CNFeffery/feffery-antd-components)中近百种具有不同功能的组件,你可以利用它们快速构建出具有各种常见功能的网页应用。

在我们的“在线二维码图片生成器”中,通过顶部AntdRadioGroup()构建的单选按钮在三种模式中进行切换,从而通过回调函数影响下面操作区所渲染出的各个表单输入类组件,如文字输入框AntdInput()、滑动输入框AntdSlider()、下拉选择AntdSelect()等:

尤其是当用户切换到“静态底图”和“动态底图”模式时,由于需要用户上传提供底图素材,因此额外会渲染出图片上传组件AntdPictureUpload(),它在“静态底图”模式下还具有图片缩放、裁切编辑功能,只需要一个参数editable=True即可实现:

最后通过回调函数中不同模式下的参数组合,将后台生成并导出的二维码结果图片推送至前端利用AntdImage()一气呵成进行交互式展示,用户即可直接右键另存为保存到本地:

本期的例子仅仅是展示了fac能力的冰山一角,事实上只要你善于利用fac中的不同功能组件,从在线小工具,到数据中台平台,都可以仅通过编写Python程序轻松实现

到此这篇关于基于Python实现在线二维码生成工具的文章就介绍到这了,更多相关Python二维码生成内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 基于Python实现在线二维码生成工具

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

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

猜你喜欢
  • 基于Python实现在线二维码生成工具
    目录1.环境搭建2.二维码生成功能的封装3.网页应用的搭建在今天的教程中,费老师我将为大家展示如何通过纯Python编程的方式,开发出一个网页应用,从而帮助用户直接通过浏览器访问,即...
    99+
    2024-04-02
  • python3二维码生成工具
      本人python学习菜鸟一枚,随着对python的学习,感觉python越来越好玩了,上次用接口查询IP地址后,又看到有道词典查询、二维码生成等接口相关的方法,并对其做了简单的尝试,确实是挺好玩的。所以将整个过程记录下来。分享在此,供大...
    99+
    2023-01-31
    工具 二维码
  • Android基于google Zxing实现二维码的生成
    最近项目用到了二维码的生成与识别,之前没有接触这块,然后就上网搜了搜,发现有好多这方面的资源,特别是google Zxing对二维码的封装,实现的已经不错了,可以直接拿过来引用...
    99+
    2022-06-06
    google zxing 二维 二维码 Android
  • 基于JS怎么实现二维码名片生成
    这篇文章主要介绍“基于JS怎么实现二维码名片生成”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“基于JS怎么实现二维码名片生成”文章能帮助大家解决问题。演示技术栈这里用到了一个二维码生成库qrcode...
    99+
    2023-07-02
  • 如何基于SpringBoot生成二维码
    这篇文章给大家分享的是有关如何基于SpringBoot生成二维码的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、基于Google开发工具包ZXing生成二维码(1)首先,需要在pom.xml依赖配置文件中加入该...
    99+
    2023-06-29
  • 基于Python编写一个二维码生成器
    目录前言1、安装第三方库2、QRCode参数解释3、自定义二维码生成器4、给二维码加图片5、全部代码前言 二维码又称二维条码,常见的二维码为QR Code,QR全称Quick Res...
    99+
    2024-04-02
  • 基于SpringBoot生成二维码的几种实现方式
    目录一、基于Google开发工具包ZXing生成二维码二、基于开源的Hutool工具生成二维码本文将基于Spring Boot介绍两种生成二维码的实现方式,一种是基于Google开发...
    99+
    2024-04-02
  • 基于SpringBoot实现代码在线运行工具
    目录说明基本思路后端实现前端说明 由于没有实现沙盒,所以这个运行只适合提交自己写的代码到服务器,不适合像 菜鸟工具 那样可以让人公开提交代码并访问。 基本思路 前...
    99+
    2024-04-02
  • 基于JS实现二维码名片生成的示例代码
    目录演示技术栈源码cssjs演示 技术栈 这里用到了一个二维码生成库qrcode.js下面是简单介绍: //初始化QRCode对象 var qrcode = new QRCode...
    99+
    2024-04-02
  • 二维码生成器:如何在Go语言中实现实时生成JavaScript二维码?
    二维码已经成为现代生活中不可或缺的一部分,它们被用于广告、宣传、票据、付款等各种场景。二维码的生成和解码已经得到了广泛的支持,因此,越来越多的人开始使用二维码来代替传统的条形码。 在本文中,我们将介绍如何在Go语言中实现实时生成JavaS...
    99+
    2023-11-06
    实时 javascript 二维码
  • 基于Python怎么编写一个二维码生成器
    这篇“基于Python怎么编写一个二维码生成器”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“基于Python怎么编写一个二维...
    99+
    2023-07-02
  • 基于google zxing的Java二维码生成与解码
     本文实例为大家分享了Java二维码生成与解码的具体代码,供大家参考,具体内容如下一、添加Maven依赖(解码时需要上传二维码图片,所以需要依赖文件上传包)<!-- google二维码工具 --><depende...
    99+
    2023-05-31
    google zxing java
  • 二维码生成Java实现代码
    本文实例为大家分享了二维码生成Java实现代码,供大家参考,具体内容如下package com.yihaomen.barcode;import java.awt.BasicStroke;import java.awt.Graphics;im...
    99+
    2023-05-31
    java 二维码 ava
  • 在PHP中实现微信二维码生成
    随着移动互联网的发展和普及,微信已经成为了人们生活和工作中不可或缺的一部分。为了满足用户的需求,微信也不断推出新的功能,其中最为重要的是微信支付。而为了使用微信支付,必须要有一个可靠的二维码生成功能,本文将介绍如何在PHP中实现微信二维码生...
    99+
    2023-05-14
    微信 PHP 二维码生成
  • QRCode.js如何基于JQuery生成二维码JS库
    这篇文章主要介绍了QRCode.js如何基于JQuery生成二维码JS库,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1. QRCode.j...
    99+
    2024-04-02
  • 基于PyQT5制作一个二维码生成器
    个性化二维码的exe桌面应用的获取方式我放在文章最后面了,注意查收。通过执行打包后的exe应用程序可以直接运行生成个性化二维码。 开始之前先来看一下通过二维码生成器是如何生成个性化二...
    99+
    2024-04-02
  • 利用java生成二维码工具类示例代码
    二维码介绍二维条形码最早发明于日本,它是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的,在代码编制上巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念,使用若干个与二进制相对应的几何形体来...
    99+
    2023-05-31
    java 生成二维码 工具类
  • 二维码生成器:使用 Python API 在 Windows 上实现。
    二维码生成器:使用 Python API 在 Windows 上实现 二维码(QR Code)是一种二维条码,可以存储大量信息。它由黑白交错的小方块组成,可以被扫描器扫描,将信息转换成可读的文本或链接。二维码已经被广泛应用于商业和日常生活中...
    99+
    2023-05-26
  • Android studio 实现生成二维码和扫描二维码
    效果图 build.gradle(:app)添加依赖 dependencies { implementation 'com.google.zxing:core:3.3.3' imple...
    99+
    2023-09-30
    android studio android ide
  • 基于Java实现的大乐透号码生成器工具类
    目录一、题目二、解题思路三、代码详解一、题目 大乐透是中国体育彩票的一种玩法,是国家体育总局体彩中心为适应市场发展需要,丰富体育彩票的市场结构,经过慎重研究和广泛的市场调研,于200...
    99+
    2022-11-13
    Java大乐透号码生成器 Java 乐透号码生成 Java 号码生成
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作