Python Base64转码解码
Python Base64 提供了好几种方法例如:
encode,
decode,
encodestring,
decodestring,
b64encode,
b64decode,
standard_b64encode
standard_b64decode
urlsafe_b64decode,
urlsafe_b64encode。
encode, decode
用来转码和 解码文件的,也可以对StringIO里的数据做编解码
#读取文件进行编码 inputRead = open('/Users/Mr_Chen/Desktop/test.jpeg','rb')
outputWrit = open('/Users/Mr_Chen/Desktop/testEncode.txt','wb') #编码文件 base64Test = base64.encode(inputRead,outputWrit) #读取文件后进行解码 inputRead = open('/Users/Mr_Chen/Desktop/testEncode.txt','rb')
outputWrit = open('/Users/Mr_Chen/Desktop/testDecode.jpeg','wb') #解码文件 base64Test2 = base64.decode(inputRead,outputWrit)encodestring, decodestring,
对字符串进行转码,解码import base64
str1 = 'This is Test String' #对字符串进行转码 enTest = base64.encodestring(str1)
print '转码后:',enTest #对字符串进行解码 deTest = base64.decodestring(enTest)
print '解码后:',deTestb64encode,b64decode,
(base64 模块提供了 b16encode,b16decode,b32encode,b32decode)
用来编码和解码字符串,并且有一个替换符号字符的功能。当base64编码后的字符除 了英文字母和数字外还有三个字符 + / =,用提替换到 +/= 这些字符
# -*- coding:utf-8 -*- import base64 #读取文件进行base16转码 inputRead = open('/Users/Mr_Chen/Desktop/test.txt','rb')
base16Test = base64.b16encode(inputRead.read())
inputRead.close()
print 'base16 Encode:',base16Test #进行base16解码 base16Test2 = base64.b16decode(base16Test)
print 'base16 Decode:',base16Test2 #读取文件进行base32转码 inputRead2 = open('/Users/Mr_Chen/Desktop/test.txt','rb')
base32Test = base64.b32encode(inputRead2.read())
inputRead2.close()
print 'base32 Encode:',base32Test #进行base32转码 base32Test2 = base64.b32decode(base32Test)
print 'base32 Decode:',base32Test2 #读取文件进行base64转码 inputRead3 = open('/Users/Mr_Chen/Desktop/test64.txt','rb')
base64Test = base64.b64encode(inputRead3.read())
inputRead3.close()
print 'base64 Encode:',base64Test #进行base64解码 base64Test2 = base64.b64decode(base64Test)
print 'base64 Decode:',base64Test2standard_b64encode,standard_b64decode
进行标准的base64,同样可以进行string ,文件的转码,解码
使用效果和encodestring 相同
# -*- coding:utf-8 -*- import base64 text = 'This is Test String!' #进行转码 baseStand = base64.standard_b64encode(text)
print 'baseStand:',baseStand #进行解码 basee = base64.encodestring(text)
print 'baseEncodeString:',basee
urlsafe_b64decode,urlsafe_b64encode
主要进行对url 的安全转码
# -*- coding:utf-8 -*- import base64 text = "http://www.baidu.com" #baseurl Encode 转码 baseUrl = base64.urlsafe_b64encode(text)
print "baseUrlEncode:" ,baseUrl #baseurl Encode 解码 baseUrl2 = base64.urlsafe_b64decode(baseUrl)
print "baseUrlDecode:" ,baseUrl2
版权声明:本文为博主原创文章,未经博主允许不得转载。
Python Base64转码解码的更多相关文章
- javascript Base64转码解码
javascript 使用btoa和atob来进行Base64转码和解码 $scope.checkAddCookie = function() { var expireDate = new Date( ...
- python base64编码和解码图片
简介 在实际项目中,可能需要对图片进行大小的压缩,较为常见的方法则是将图片转换为base64的编码,本文就python编码和解码图片做出一定的介绍. 代码 import base64 import o ...
- 关于base64转码解码
刚好涉及到记录一下 1.JS BASE64 解码和编码 js代码: /** * * Base64 encode / decode * * @author haitao.tu * @date 2010- ...
- Python 二维码解码
二维码解析 Python中关于二维码解析的现成模块有很多,比较著名的就是Zbar以及ZXing.然而很不幸的是,官方的版本都是支持到python2.x,下面是在python2.x的例子: import ...
- JS实现Base64编码、解码,即window.atob,window.btoa功能
window.atob(),window.btoa()方法可以对字符串精选base64编码和解码,但是有些环境比如nuxt的服务端环境没法使用window,所以需要自己实现一个base64的编码解码功 ...
- javascript 使用btoa和atob来进行Base64转码和解码
javascript原生的api本来就支持,Base64,但是由于之前的javascript局限性,导致Base64基本中看不中用.当前html5标准正式化之际,Base64将有较大的转型空间,对于H ...
- Python中进行Base64编码和解码
Base64编码 广泛应用于MIME协议,作为电子邮件的传输编码,生成的编码可逆,后一两位可能有“=”,生成的编码都是ascii字符.优点:速度快,ascii字符,肉眼不可理解缺点:编码比较长,非常容 ...
- python base64 编解码,转换成Opencv,PIL.Image图片格式
二进制打开图片文件,base64编解码,转成Opencv格式: # coding: utf-8 import base64 import numpy as np import cv2 img_file ...
- Python Base64 编码
0x00 Base64简介 0x01 常用场景举例 0x02 编.解码流程 0x03 Python中Base64编码与解码 0x00 Base64简介 我们知道在计算机中任何数据都是按ascii码存储 ...
随机推荐
- [Swust 549]--变位词(vector水过)
Time limit(ms): 1000 Memory limit(kb): 65535 Description 输入N和一个要查找的字符串,以下有N个字符串,我们需要找出其中的所有待查找字符串的 ...
- 原生js仿jquery--animate效果
效果 代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- This exception may occur if matchers are combined with raw values
org.mockito.exceptions.misusing.InvalidUseOfMatchersException: Invalid use of argument matchers!3 ma ...
- SUP (SAP Mobile SDK 2.2) 连接 Sybase SQL Anywhere sample 数据库
安装了 SAP Mobile SDK 2.2 后发现,这个版本没有自带Sybase SQL Anywhere 数据库. 解决办法: 1. 免费下载 SQL Anywhere Develope ...
- 基于visual Studio2013解决算法导论之013基数排序
题目 基数排序 解决代码及点评 #include <stdio.h> #include <stdlib.h> #include <malloc.h> #in ...
- hdu 4736 This Is The Job The Bear Finds(2013年成都ACM网络赛)
// Time 1718 ms; Memory 1500 K #include<iostream> #include<cstdio> #include<cmath> ...
- CodeIgniter 应用开发笔记 - 3
使用migration建数据表 一.新建migrations文件夹 在application新建一个文件夹migrations,存放建表类. 建表类使用用户手册中的代码作为模板(user_guide/ ...
- NGUI出现Shader wants normals, but the mesh UIAtlas doesn't have them
NGUI出现Shader wants normals, but the mesh UIAtlas doesn't have them,没有网格法线,打开UI Root上 UIPanel组建上的 Nor ...
- SQL查询重复记录、删除重复记录方法
查找所有重复标题的记录:SELECT * FROM t_info a WHERE ((SELECT COUNT(*) FROM t_info WHERE Title = a.Title) > 1 ...
- c# winform 弹出确认消息框判断是否删除?
if (MessageBox.Show("确认删除?", "此删除不可恢复", MessageBoxButtons.YesNo) == DialogResult ...