Télécharger un fichier à partir de google drive à l'aide de wget
Je veux télécharger un fichier qui est visible à cette adresse pour un linux à distance:
https://drive.google.com/file/d/0Bz7KyqmuGsilT0J5dmRCM0ROVHc/view?usp=sharing
J'espère que je peux le faire avec wget
.
J'ai essayé
wget https://drive.google.com/file/d/0Bz7KyqmuGsilT0J5dmRCM0ROVHc/vgg16_weights.h5
et la réponse a été une erreur 404.
Est-il possible de wget
un fichier google drive? Si oui, quel est le chemin à fournir? Si non, existe-il des solutions de rechange (bash ou autre) afin que je puisse éviter de télécharger le fichier à mon local et de le transférer à la télécommande?
- Lire cette réponse rapide stackoverflow.com/a/25033499/2666859
- Pour l'information des autres, vous pouvez voir ma réponse ici à l'aide de CURL (mise à Jour Mars 2018): stackoverflow.com/a/49444877/4043524
- Double Possible de wget/curl fichier volumineux à partir de google drive
Vous devez vous connecter pour publier un commentaire.
Insérez votre fichier ID dans cette URL (
https://drive.google.com/uc?export=download&id=
), puis entourer les URL avec des citations de sorte que Bash ne pas mal interpréter le&
, comme suit:wget "https://drive.google.com/uc?export=download&id=0Bz7KyqmuGsilT0J5dmRCM0ROVHc"
Référence ici.
curl
, le ci-dessus fonctionne aussi, par exemple:curl -L -o file.out 'https://drive.google.com/uc?export=download&id=0Bz7KyqmuGsilT0J5dmRCM0ROVHc'
. Notez que le-L
option de ligne de commande est nécessaire pour la suite de Google redirige.id=$(echo $1 | cut -d "=" -f2) url=$(echo "https://drive.google.com/uc?export=download&id="$id) wget "$url" -O $2
et de courir avec le lecteur d'origine de lien (pas l'ID, mais l'URL complète) en plus d'un nom de fichier de sortie.Tout d'abord, cliquez sur le bouton partager en haut à droite, et de définir l'autorisation de
allow anyone with the link can view
.Cliquez sur Fichier->Télécharger-> Document PDF(.pdf) dans la gauche de la cornouille, et commencer à télécharger par navigateur.
Trouver l'URL dans downloader, chrome est en
chrome://downloads/
.Le lien d'URL, le temps que je suis en train d'écrire cette réponse est
https://docs.google.com/document/export?format=pdf&id=xxx&token=xxx&includes_info_params=true
J'ai pu télécharger au format pdf avec wget par
wget -O xxx.pdf "https://docs.google.com/document/export?format=pdf&id=xxx"
Comme beaucoup l'ont dit, il n'est pas trivial à wget de gros fichiers à cause de google drive avertissement de sécurité.
Toutefois, comme expliqué dans ce tutoriel https://medium.com/tinghaochen/how-to-download-files-from-google-drive-through-terminal-4a6802707dbb, vous pouvez le télécharger à l'exécution d'un script python à l'intérieur de download_google_drive dépôt github:
python donwload_gdrive.py FILE_ID DEST_PATH
, et vous avez seulement besoin d'un accès en consultation. Il travaille maintenant à compter du 12 novembre 2019 et a été pendant plus d'un an.Pour l'instant c'est la seule solution simple que j'ai trouvé pour le téléchargement à partir de n'afficher machines, bien que je connais aussi googleapiclient (https://developers.google.com/android/guides/google-api-client) avec l'un de vous pourrait même automatiser le téléchargement/téléchargement de fichiers privés. J'espère que vous aimez l'un d'eux.