# MD5加密
# 由于MD5模块在python3中被移除
# 在python3中使用hashlib模块进行md5操作

import hashlib

def MD5(str):
# 创建md5对象
hl = hashlib.md5()
hl.update(str.encode(encoding='utf-8'))
return hl.hexdigest()

# 将小写字母切换成大写
# return hl.hexdigest().upper()

if __name__=="__main__":
# 待加密信息
str = '123@qwe'
md5 = MD5(str)
print('MD5加密前为 :' + str)
print('MD5加密后为 :' + md5)

应用

base64相关

加密为byte类型

import base64

def Ebase64(string):
# base64加密
return base64.b64encode(string.encode('utf-8')) # 返回byte类型 if __name__=='__main__':
string = '123@qwe数据'
print(f"{string}加密后:{Ebase64(string)}")

加密为字符串类型

import base64

def Ebase64(string):
# base64加密
return str(base64.b64encode(string.encode('utf-8')), 'utf-8') # 返回字符串类型 if __name__=='__main__':
string = '123@qwe数据'
print(f"{string}加密后:{Ebase64(string)}")

解密:

import base64

def Dbase64(string):
# base64解密
return base64.b64decode(string).decode('utf-8') # byte类型与字符串类型都统一解密 if __name__=='__main__': bstring = 'MTIzQHF3ZeaVsOaNrg==' # 字符串
bbstring = b'MTIzQHF3ZeaVsOaNrg==' # byte类型 print(f"{bstring} 解密后:{Dbase64(bstring)}")
print(f"{bbstring} 解密后:{Dbase64(bbstring)}")

最后封装

python接口自动化测试二十七:加密与解密MD5、base64的更多相关文章

  1. python接口自动化测试二十七:密码MD5加密 ''' MD5加密 ''' # 由于MD5模块在python3中被移除 # 在python3中使用hashlib模块进行md5操作 import hashlib # 待加密信息 str = 'asdas89799,.//plrmf' # 创建md5对象 hl = hashlib.md5() # Tips # 此处必须声明encode # 若写法为

    python接口自动化测试二十七:密码MD5加密   ''' MD5加密 '''# 由于MD5模块在python3中被移除# 在python3中使用hashlib模块进行md5操作import has ...

  2. python接口自动化测试二十七:密码MD5加密

    # MD5加密 # 由于MD5模块在python3中被移除# 在python3中使用hashlib模块进行md5操作import hashlib def MD5(str): # 创建md5对象 hl ...

  3. python接口自动化测试二:常用操作

    url = '接口地址' r = requests.get(url)                      # 发送get请求 print(r.status_code)               ...

  4. python接口自动化测试二十三:文件上传

    # 以禅道为例: 一.创建一个类,类里面写一个登录方法: import requestsclass LoginZentao(): def __init__(self, s): # 初始化 self.s ...

  5. python接口自动化测试(二)-requests.get()

    环境搭建好后,接下来我们先来了解一下requests的一些简单使用,主要包括: requests常用请求方法使用,包括:get,post requests库中的Session.Cookie的使用 其它 ...

  6. python 接口自动化测试二(request.get)

    环境搭建好后,接下来我们先来了解一下requests的一些简单使用,主要包括: requests常用请求方法使用,包括:get,post requests库中的Session.Cookie的使用 其它 ...

  7. python接口自动化测试二十六:使用pymysql模块链接数据库

     #!/usr/bin/env python# -*- coding: utf-8 -*-# @Time    : 2018/5/28 18:51# @Author  : StalloneYang#  ...

  8. python接口自动化测试二十五:执行所有用例,并生成HTML测试报告

        import requestsimport unittest class TestQQ(unittest.TestCase):    '''测试QQ号接口'''      # 此注释将展示到测 ...

  9. python接口自动化测试二十九:yaml配置文件的写和读

    # 先安装ruamel.yaml模块 写入配置文件: import os# 先安装ruamel.yaml模块from ruamel import yaml # 将字典写入到yamldict = { ' ...

随机推荐

  1. js之string操作符

    1.字符方法 // 输出索引值的字符 'zhangamie'.charAt(2) // "a" 'zhangamie'[2] //"a" // 输出编码 a的a ...

  2. 函数和常用模块【day05】:生成器(四)

    本节内容 1.概述 2.列表生成式 3.生成器 4.函数实现生成器 5.生成器表达式 一.概述 我们在使用一组数据时,通常情况下会定义一个列表,然后循环里面的元素,但是你想过没有,如果你只需要使用列表 ...

  3. 设计模式---单一职责模式之装饰模式(Decorator)

    前提:"单一职责"模式 在软件组件的设计中,如果责任划分的不清晰,使用继承,得到的结果往往是随着需求的变化,子类急剧膨胀,同时充斥着重复代码,这时候的关键是划清责任 典型模式(表现 ...

  4. Makefile 中符合的使用

    1. $@: 表示规则中的目标文件集.在模式规则中,如果有多个目标,那么,"$@"就是匹配于 目标中模式定义的集合 2. $^  : 所有的依赖目标的集合.以空格分隔.如果在依赖目 ...

  5. Kruskal算法:最小生成树

    //Kruskal算法按照边的权值从小到大查看一遍,如果不产生圈(重边等也算在内),就把当前这条表加入到生成树中. //如果判断是否产生圈.假设现在要把连接顶点u和顶点v的边e加入生成树中.如果加入之 ...

  6. android kotlin Gradle DSL method not found: '1.2.51()'错误,be using a version of the Android Gradle plug-in that does not contain the method (e.g. 'testCompile' was added in 1.1.0).

    同步的时候遇到这个问题,从log上看是因为gradle的版本不包含kotlin 1.2.51这个method,具体原因我也不是很清楚,大概猜测是kotlin版本的问题,而最新的版本就是1.2.51,所 ...

  7. Networx蓝屏问题

    本人系统win7专业版64位. 从5月底开始就时不时有蓝屏发生,而且可以说是没有任何征兆就"啪"的一下蓝了... 有时候是隔个四五天蓝屏一次,有时候一天都能蓝好几次,实在是让人恼火 ...

  8. 插入排序算法的JAVA实现

    1,对元素进行排列时,元素之间需要进行比较,因此需要实现Comparable<T>接口.即,<T extends Comparable<T>>. 更进一步,如果允许 ...

  9. JDBC preparedStatement分页和统计,批处理和事务

    一个类:DriverManager 四个接口:Connection.PreparedStatement .ResultSet.Statement 连接不上数据库出错的原因 1.数据库监听服务的配置不正 ...

  10. 20155204 2016-2017-2 《Java程序设计》第6周学习总结

    20155204 2016-2017-2 <Java程序设计>第6周学习总结 教材学习内容总结 一切皆对象,输入输出也是类,线程也是 String对象的trim方法去掉首尾空格和空字符 f ...