Este proyecto es un contenedor de libbase64.
Su objetivo es proporcionar una implementación base64 rápida para la codificación/decodificación base64.
pip instalar pybase64
pybase64
utiliza la misma API que la "interfaz moderna" de Python base64 (introducida en Python 2.4) para una fácil integración.
Para obtener la decodificación más rápida, se recomienda utilizar pybase64.b64decode
y validate=True
cuando sea posible.
import pybase64
print ( pybase64 . b64encode ( b'>>>foo???' , altchars = '_:' ))
# b'Pj4_Zm9vPz8:'
print ( pybase64 . b64decode ( b'Pj4_Zm9vPz8:' , altchars = '_:' , validate = True ))
# b'>>>foo???'
# Standard encoding helpers
print ( pybase64 . standard_b64encode ( b'>>>foo???' ))
# b'Pj4+Zm9vPz8/'
print ( pybase64 . standard_b64decode ( b'Pj4+Zm9vPz8/' ))
# b'>>>foo???'
# URL safe encoding helpers
print ( pybase64 . urlsafe_b64encode ( b'>>>foo???' ))
# b'Pj4-Zm9vPz8_'
print ( pybase64 . urlsafe_b64decode ( b'Pj4-Zm9vPz8_' ))
# b'>>>foo???'
También se proporciona una herramienta de línea de comandos. Tiene subcomandos de codificación, decodificación y evaluación comparativa.
uso: pybase64 [-h] [-V] {punto de referencia, codificar, decodificar} ... Herramienta de línea de comandos pybase64. argumentos posicionales: {punto de referencia, codificar, decodificar} ayuda de la herramienta punto de referencia -h para uso codificar -h para uso decodificar -h para uso argumentos opcionales: -h, --help muestra este mensaje de ayuda y sale -V, --version muestra el número de versión del programa y sale
Documentación completa en Read the Docs.
Ejecutando Python 3.7.2, Apple LLVM versión 10.0.0 (clang-1000.11.45.5), Mac OS X 10.14.2 en un Intel Core i7-4870HQ a 2,50 GHz
pybase64 0.5.0 (extensión C activa - AVX2) banco: altchars=Ninguno, validar=Falso pybase64._pybase64.encodebytes: 1734,776 MB/s (13.271.472 bytes -> 17.928.129 bytes) pybase64._pybase64.b64encode: 4039,539 MB/s (13.271.472 bytes -> 17.695.296 bytes) pybase64._pybase64.b64decode: 1854,423 MB/s (17.695.296 bytes -> 13.271.472 bytes) base64.encodebytes: 78,352 MB/s (13.271.472 bytes -> 17.928.129 bytes) codificación base64.b64: 539,840 MB/s (13.271.472 bytes -> 17.695.296 bytes) base64.b64decode: 287,826 MB/s (17.695.296 bytes -> 13.271.472 bytes) banco: altchars=Ninguno, validar=Verdadero pybase64._pybase64.b64encode: 4156,607 MB/s (13.271.472 bytes -> 17.695.296 bytes) pybase64._pybase64.b64decode: 4107,997 MB/s (17.695.296 bytes -> 13.271.472 bytes) codificación base64.b64: 559,342 MB/s (13.271.472 bytes -> 17.695.296 bytes) base64.b64decode: 143,674 MB/s (17.695.296 bytes -> 13.271.472 bytes) banco: altchars=b'-_', validar=Falso pybase64._pybase64.b64encode: 2786,776 MB/s (13,271,472 bytes -> 17,695,296 bytes) pybase64._pybase64.b64decode: 1124,136 MB/s (17.695.296 bytes -> 13.271.472 bytes) codificación base64.b64: 322,427 MB/s (13.271.472 bytes -> 17.695.296 bytes) base64.b64decode: 205,195 MB/s (17.695.296 bytes -> 13.271.472 bytes) banco: altchars=b'-_', validar=Verdadero pybase64._pybase64.b64encode: 2806,271 MB/s (13.271.472 bytes -> 17.695.296 bytes) pybase64._pybase64.b64decode: 2740,456 MB/s (17.695.296 bytes -> 13.271.472 bytes) codificación base64.b64: 314,709 MB/s (13.271.472 bytes -> 17.695.296 bytes) base64.b64decode: 121,803 MB/s (17.695.296 bytes -> 13.271.472 bytes)
Documentación agregada
Se agregaron subcomandos al script principal:
- ayuda
- versión
- codificar
- descodificar
- punto de referencia