python自动化脚本加密_python接口自动化测试二十七:加密与解密MD5、base64

本文介绍了Python3中如何实现MD5加密和Base64编码解码。通过hashlib模块进行MD5操作,展示了加密过程。同时,讲解了Base64的加密与解密,包括加密为byte类型和字符串类型的情况。
摘要由CSDN通过智能技术生成

# 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加密

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

【Java EE 学习 49 上】【Spring学习第一天】【基本配置】

一.HelloWorld 需要的jar文件(以2.5.5为例):spring.jar,common-logging.jar 1.新建类com.kdyzm.spring.helloworld.Hello ...

注释驱动的 Spring cache 缓存介绍

概述 Spring 3.1 引入了激动人心的基于注释(annotation)的缓存(cache)技术,它本质上不是一个具体的缓存实现方案(例如 EHCache 或者 OSCache),而是一个对缓存使 ...

leetcode 138. Copy List with Random Pointer ----- java

A linked list is given such that each node contains an additional random pointer which could point t ...

mac下安装redis

安装php_redis.so 首先用git从https://github.com/nicolasff/phpredis下载源码.然后依次执行以下命令 sudo /Applications/XAMPP/ ...

Apache common包应用集合

一.Commons BeanUtils http://jakarta.apache.org/commons/beanutils/index.html 说明:针对Bean的一个工具集.由于Bean往往是 ...

浅谈DevExpress<三>:在GridView中加载动态图片

今天的演示效果如下:在GridView中的下拉框中选中一种颜色,则后面的加载相应的图片,如下图: 1.

pdflush的工作原理

大家知道,在linux操作系统中,写操作是异步的,即写操作返回的时候数据并没有真正写到磁盘上,而是先写到了系统cache里,随后由pdflush内核线程将系统中的脏页写到磁盘上,在下面几种情况下,系统 ...

Java并发编程(五)-- Java内存模型补充

前面我们已经介绍了:当对象和变量存储到计算机的各个内存区域时,必然会遇到的两个问题及解决方法 共享对象的可见性-- 解决方法:使用java volatile关键字 共享对象的竞争现象 -- 解决方法: ...

MSSQL-SELECT&UPDATE动作要申请的锁

最近在学习[MySQL事务&锁]这块知识,一不留神和MSSQL乱窜了~.~ 文章最初是想查看MySQL vs MSSQL在下面环境产生的阻塞现象会话1开启事务更新数据尚未提交->会话2读 ...

UICollectionView setPrefetchingEnabled

UICollectionView 开启是否开启预加载,如果开启,cell在没显示的时候就回去调用cellForIndex…方法,如果没开启,cell只有在显示的时候才会去调用cellForIndex… ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值