
Quiero escribir un script para descargar.esta carpetadesde GoogleDrive. El script está dirigido a usuarios de UNIX no expertos, por lo que no quiero utilizar más que curl o wget. He visto soluciones con el ID de archivo, pero no puedo obtener el ID de archivo en mi caso.
¿Alguien logró descargar carpetas de Google Drive?
Estas son las soluciones que probé:
Respuesta1
La solución actualizada más sencilla (2021) que encontré para descargar carpetas grandes de Google Drive es gdrive:
http://github.com/prasmussen/gdrive
gdrive download --recursive --skip <file_id>
¿Dónde <file_id>
está la identificación que obtienes de la URL de la carpeta? No es necesario configurar nada, ya te pedirá tus credenciales y demás.
La --skip
bandera es útil para carpetas grandes, ya que la descarga puede expirar en algún momento. Luego vuelve a ejecutar el comando y --skip
lo hará actuar como un archivo rsync
.
A partir de esta fecha, --skip
es una bandera relativamente nueva y está disponible si se instala gdrive
a través de Go. Si su sistema gdrive
no lo tiene, intente lo mismo sin --skip
. Luego, si realmente lo necesita, instálelo go get
como se describe en la página Léame de GitHub.
Respuesta2
Escribí un código Python usando la biblioteca PyDrive, que puede recuperar de forma recursiva las subcarpetas y archivos dentro de una carpeta principal. Usando los identificadores de los archivos, luego generé un script bash usando wget.
Paso 1 He utilizado la biblioteca PyDrive. Para utilizar esta biblioteca, debe completar las instrucciones descritas en esteenlace.
Paso 2 Ahora, cree un script de Python o un cuaderno en el mismo directorio de trabajo, donde guardó el archivo “client_secrets.json”. Adjunto el cuaderno a continuación.
https://gist.github.com/immuntasir/73b8e8eef7e6c9066aaf2432bebf7db0
Paso 3
Usando scp, copie “script.sh” al servidor remoto.
scp ~/path/script.sh username@ip:path
Etapa 4
Inicie sesión en el servidor de eliminación, navegue hasta la ruta. Luego haga que el script sea ejecutable usando el siguiente comando.
chmod 777 script.sh
Ejecute el script y ¡listo!
./script.sh
También escribí un tutorial, que se puede encontrar aquí:https://medium.com/@immuntasir/descargar-recursivamente-todo-el-contenido-de-una-carpeta-de-google-drive-usando-python-wget-and-a-bash-script-d8f2c6b105d5
¡Espero que esto ayude!
Respuesta3
Su fileId está en la dirección URL de su carpeta, simplemente puede ejecutar
wget --no-check-certificate 'https://docs.google.com/uc?export=download&id=FILEID' -O FILENAME