web-automation-pytest-demo/Lib/Base64.py

30 lines
986 B
Python
Raw Normal View History

2023-03-15 19:40:39 +08:00
import base64
def base64_encode(data, output=None):
"""
:param data: Bytes or String or FileStream.
:param output: Output file stream, when the data parameter is the file stream valid.
:return: What type of data entering returns the same data type.
"""
if isinstance(data, bytes):
return base64.b64encode(data)
if isinstance(data, str):
return base64.b64encode(bytes(data, encoding='utf-8')).decode()
else:
return base64.encode(data, output)
def base64_decode(data, output=None):
"""
:param data: Bytes or String or FileStream.
:param output: Output file stream, when the data parameter is the file stream valid.
:return: What type of data entering returns the same data type.
"""
if isinstance(data, bytes):
return base64.b64decode(data)
if isinstance(data, str):
return base64.b64decode(bytes(data, encoding='utf-8')).decode()
else:
return base64.decode(data, output)