Python

Subir archivos a Dropbox desde Python a través de la API

Los servicios de almacenamiento en la nube permiten guardar y recuperar archivos desde casi cualquier dispositivo que disponga de una conexión a internet. Lo que convierte a estos servicios en un repositorio perfecto para almacenar diferentes archivos. Ya que mientras se disponga de una conexión a la red se podrá acceder a los datos. Una de sus posibles aplicaciones puede ser el guardado de los resultados de los programas escritos en Python. Por ejemplo, al terminar una simulación se pueden guardar los resultados para usarlos en otra maquina. Entre todos los servicios de almacenamiento uno de los más populares es Dropbox. Para subir archivos a Dropbox desde Python se pueden utilizar dos enfoques: instalar la aplicación en nuestro sistema operativo o utilizar la API. La primera opción es útil cuando trabajamos con nuestro ordenador. Pero esta opción presenta problemas cuando los códigos se ejecutan en un servidor o en una maquina con poco espacio. En esta entrada vamos a ver como subir archivos a Dropbox desde Python mediante la API de esta plataforma.

Crear aplicación para la API de Dropbox

La API de Dropbox permite la integración de aplicaciones escritas por cualquiera con el servicio. Permitiendo a los programadores subir, descargar y modificar los archivos que un usuario tenga en la nube. Para poder utilizarla, en primer lugar, es necesario disponer de una cuenta de Dropbox y acceder al formulario de creación de aplicaciones para darla de alta. (https://www.dropbox.com/developers/apps/create). En el formulario es necesario indicar la API, el tipo de acceso que tendrá a la cuenta y el nombre de la aplicación, como se muestra en la siguiente captura de pantalla.

Formulario para la creación de aplicaciones

En el ejemplo se ha seleccionado la API de Dropbox, el acceso se ha configurado únicamente para la carpeta de aplicaciones y el nombre de la aplicación es sabe_python. Una vez hecho todo esto se ha de pulsar sobre el botón Create app. En caso de que todo sea correcto se creara la aplicación y apareciendo la siguiente ventana de opciones.

Configuración de las aplicaciones de la API

Obtención del token de acceso

Para poder subir archivos a Dropbox desde Python utilizando el API es necesario obtener el token de la aplicación. Para ello en la ventan de opciones anterior es necesario ir a la zona de OAuth 2 y pulsar en el botón Generate situado debajo de Generated Access token. En este punto aparecerá el token de la aplicación que se utilizará a continuación.

Instalación del paquete Dropbox para Python

El método más fácil para subir de archivos a Dropbox desde Python es utilizar el paquete oficial. Un paquete que se puede instalar mediante el comando pip. Así para su instalación solamente es necesario escribir en la terminal:

pip install Dropbox

Procedimiento para subir archivos a Dropbox desde Python

Una vez instalado el paquete oficial de Dropbox para subir a un archivo solamente es necesario importar este. Ahora con el token que se ha obtenido anteriormente se ha crear una conexión a la aplicación, para lo que se utiliza el método Dropbox. Esta conexión dispone de un método para subir archivos files_upload. A la que se le ha de indicar el archivo y la ruta del archivo en el destino. Por ejemplo, para subir una imagen se pude utilizar el siguiente código.

import dropbox

file_from = 'analytics_lane.jpg'
file_to = '/analytics_lane/analytics_lane.jpg'

dbx = dropbox.Dropbox('access_token')
dbx.files_upload(open(file_from, 'rb').read(), file_to)

Al ejecutar este código se puede ir a la carpeta de Dropbox para comprobar que el archivo se ha subido correctamente.

Archivo subido a Dropbox

Conclusiones

Hoy se ha visto cómo subir archivos a Dropbox desde Python utilizando la API de programación. Esta función puede ser útil para guardar los resultados de procesos largos en la nube o para datos adquiridos en dispositivos con poca memoria. Las posibilidades que ofrece esta API son infinitos ya que ofrece el acceso a almacenamiento remoto sin necesidad de instalar programas.

Imágenes: Pixabay (Edward Lich)

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez

Recent Posts

BG/BB: el modelo de CLV para compras en períodos discretos

Los dos artículos anteriores de la serie cubrieron BG/NBD, el modelo para negocios donde el…

54 minutos ago

Por Qué las Contraseñas Largas son más Seguras que las Complejas

"Tu contraseña debe tener al menos 8 caracteres, una mayúscula, un número y un símbolo…

5 días ago

Gini, KS y AUC: Cómo Medir la Calidad de un Modelo de Credit Scoring

Cuando un analista de riesgo presenta un nuevo scorecard ante el comité de dirección, la…

1 semana ago

Curiosidad: De dónde vienen foo, bar y foobar

Si revisáis código o documentación de otros programadores, tarde o temprano os toparéis con dos…

2 semanas ago

BG/NBD + Gamma/Gamma: el modelo probabilístico para CLV en compras continuas

Los dos artículos anteriores cubrieron el CLV clásico —una fórmula útil pero que trata a…

2 semanas ago

Errores habituales al trabajar con DataFrames grandes en Pandas (y cómo evitarlos)

Hay un momento muy concreto en la vida de casi todo análisis: el código que…

3 semanas ago

This website uses cookies.