Sobre el proyecto
smart_open es una librería de Python 3 que ofrece una API unificada y pitónica para la transmisión de archivos muy grandes hacia y desde diversos sistemas de almacenamiento, incluyendo Amazon S3, Google Cloud Storage, Azure Blob Storage, HDFS, WebHDFS, HTTP/HTTPS, SFTP/SCP/SSH y el sistema de archivos local. Actúa como un reemplazo directo de la función open() incorporada en Python, manteniendo total compatibilidad mientras agrega soporte para URI remotas y (des)compresión sobre la marcha para formatos como gzip, bzip2, LZ4, XZ y Zstandard.
La librería gestiona los detalles de autenticación y transporte para cada backend, permitiendo a los usuarios pasar clientes personalizados (por ejemplo, boto3, google-cloud-storage, azure-storage-blob) mediante transport_params para una configuración avanzada. Soporta gestores de contexto, búsqueda y operaciones estándar de IOBase. La compresión se infiere por defecto a partir de las extensiones de archivo, pero puede anularse o desactivarse. Utilidades adicionales incluyen la iteración paralela sobre el contenido de cubos S3 mediante smart_open.s3.iter_bucket().
La instalación es mínima por defecto; las dependencias opcionales para cada backend de almacenamiento y formato de compresión se pueden instalar mediante extras (por ejemplo, pip install 'smart_open[s3,gcs,azure,http,webhdfs,ssh,zst,lz4]'). El proyecto está bien probado, tiene licencia MIT y se mantiene activamente.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.