专栏首页Kirin博客Django生成二维码

Django生成二维码

1. 安装

pip install qrcode

安装Image包

pip install Image

1.1 在代码中使用

import qrcode
 
img = qrcode.make('输入一个网址')
# img <qrcode.image.pil.PilImage object at 0x1044ed9d0>
 
with open('test.png', 'wb') as f:
    img.save(f)

这样会生成一个带有网址的二维码,文件会保存到硬盘中

1.2 在python中调用

import qrcode
from qrcode.image.pure import PymagingImage
img = qrcode.make('Some data here', image_factory=PymagingImage)一个

2. 在django中使用

2.1 新建一个项目,tools应用

django-admin.py startproject xiangmu
python manage.py startapp tools

2.2 将tools应用添加到项目配置文件中

INSTALLED_APPS = (
     
    ...
     
    'tools',
)

2.3 修改tools下的视图

from django.http import HttpResponse
import qrcode
from django.utils.six import BytesIO
 
 
def generate_qrcode(request, data):
    img = qrcode.make(data)
 
    buf = BytesIO()
    img.save(buf)
    image_stream = buf.getvalue()
 
    response = HttpResponse(image_stream, content_type="image/png")
    return response

2.4 添加视图函数在项目/urls中

  url(r'^qrcode/(.+)$', 'tools.views.generate_qrcode', name='qrcode'),

2.5 同步数据库,打开开发服务器

python manage.py syncdb
python manage.py runserver

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python/Django 生成二维码

    kirin
  • localStorage中怎么存对象?

    然后,你就可以将objStr按正常的方式存入localStorage中了,如下所示:

    kirin
  • flex布局技巧

    最近有个面试,面试官问到,在一个横向布局上,假设有三个div,每个宽度为定宽apx,如果想使两侧宽度为x,中间div间间隔为2x。x可以自适应。如下图:

    kirin
  • 中国的大数据优势:数据规模+数据传统

      《中国经济周刊》:大数据的真正价值是什么,它可以为中国带来什么?   舍恩伯格:大数据的价值并不仅仅局限于它初始被收集的目的,而在于它之后可以服务于其他目...

    CDA数据分析师
  • 大数据人工智能词汇索引TUVWXYZ大数据人工智能词汇索引

    大数据人工智能词汇索引 T ---- T字节(TB: Terabytes):约等于1000 GB(gigabytes)。1 TB容量可以存储约300小时的高清视...

    Albert陈凯
  • Java 泛型中的通配符 T,E,K,V,?,你确定都了解吗?

    Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许开发者在编译时检测到非法的类型。

    互扯程序
  • 用Flux实现TodoMVC

    本文通过实现一个 TodoMVC 应用来说明一个 Flux 应用的结构是怎样的。本文会告诉你如何一步一步地实现这个应用,完整的源代码可以从 Github 下载。

    IMWeb前端团队
  • 「信息架构」EA874:信息架构基本组件

    信息建模描述了理解与企业相关的数据、流程和规则所需的元数据(图1)。信息建模有三个主要领域:

    首席架构师智库
  • Android高级工程师面试必备之计算机网络基础

    应用层任务:通过应用进程间的通信交互来完成特定的网络应用 应用层协议:应用进程间的通信交互规则 报文:应用层交互的数据单元 支持的协议有:

    Android技术干货分享
  • 用Flux实现TodoMVC

    本文通过实现一个 TodoMVC 应用来说明一个 Flux 应用的结构是怎样的。本文会告诉你如何一步一步地实现这个应用,完整的源代码可以从 Github 下载。...

    IMWeb前端团队

扫码关注云+社区

领取腾讯云代金券