MHuiG

「看庭前花开花落,望天上云卷云舒」

QRcode

# Python QRcode

## 加密

enQRcode.py

    import qrcode
    import os
    import sys
    import time
    #pip install zxing解析库，还需要安装PIL，pillow和qrCode库

    QRImagePath = os.getcwd() + '/qrcode.png'   #临时存储位置
    qr = qrcode.QRCode(
        version=1,
        error_correction=qrcode.constants.ERROR_CORRECT_L,
        box_size=10,
        border=2,
    )   #设置图片格式

    print("input:QRcode image:")
    data = input()  #运行时输入数据
    qr.add_data(data)
    qr.make(fit=True)

    img = qr.make_image()
    img.save('qrcode.png')  #生成图片

    if sys.platform.find('darwin') >= 0:
        os.system('open %s' % QRImagePath)

    elif sys.platform.find('linux') >= 0:
        os.system('xdg-open %s' % QRImagePath)
    else:
        os.system('call %s' % QRImagePath)

    time.sleep(5)   #间隔5个单位
    #os.remove(QRImagePath)  #删除图片

## 解密

deQRcode.py

    import os
    import logging
    from PIL import Image
    import zxing    #导入解析包
    import random
    logger = logging.getLogger(__name__)    #记录数据
    if not logger.handlers:
        logging.basicConfig(level = logging.INFO)
    DEBUG = (logging.getLevelName(logger.getEffectiveLevel()) == 'DEBUG')   #记录调式过程
    # 在当前目录生成临时文件，规避java的路径问题
    def ocr_qrcode_zxing(filename):
        img = Image.open(filename)
        ran = int(random.random() * 100000)     #设置随机数据的大小
        img.save('%s%s.jpg' % (os.path.basename(filename).split('.')[0], ran))
        zx = zxing.BarCodeReader()      #调用zxing二维码读取包
        data = ''
        zxdata = zx.decode('%s%s.jpg' % (os.path.basename(filename).split('.')[0], ran))    #图片解码

    # 删除临时文件
        os.remove('%s%s.jpg' % (os.path.basename(filename).split('.')[0], ran))

        if zxdata:
            logger.debug(u'zxing识别二维码:%s,内容: %s' % (filename, zxdata))
            data = zxdata
        else:
            logger.error(u'识别zxing二维码出错:%s' % (filename))
            img.save('%s-zxing.jpg' % filename)
        return data     #返回记录的内容

    if __name__ == '__main__':
        print("input:QRcode path:")
        filename = input()
        # zxing二维码识别
        ltext = ocr_qrcode_zxing(filename)  #将图片文件里的信息转码放到ltext里面
        logger.info(u'[%s]Zxing二维码识别:[%s]!!!' % (filename, ltext))  #记录文本信息

    print(ltext)    #打印出二维码名字

Python Playfair

Playfair Python Playfair Playfair.py#########################Playfair密码#####################...

Python RailFenceCipher

RailFenceCipher Python RailFenceCipher RailFenceCipher.py#coding=utf-8def railFenceCipher()...

推荐阅读
一键安装ecs服务器的web环境(阿里云) Cryptography Python ASCII 字符串 转换 如何加密你的 Python 代码 Django将发布内容动态显示到页面上 Python BinaryConversion

留言区

Notes
Cryptography
本文目录
Are You A Robot?