Google ドライブから大きなフォルダをダウンロードする

Google ドライブから大きなフォルダをダウンロードする

ダウンロードするスクリプトを書きたいこのフォルダGoogle ドライブから。このスクリプトは、UNIX のエキスパートではないユーザーを対象としているため、curl または wget 以外は使用しません。ファイル ID を使用したソリューションを見たことがありますが、私の場合はファイル ID を取得できません。

Google ドライブからフォルダをダウンロードできた人はいますか?

私が試した解決策は次のとおりです。

答え1

Google ドライブから大きなフォルダーをダウンロードするために私が見つけた最も簡単な最新のソリューション (2021) は gdrive です。

http://github.com/prasmussen/gdrive

gdrive download --recursive --skip <file_id>

フォルダー URL から取得した ID はどこに<file_id>ありますか。何も設定する必要はありません。すでに資格情報などが求められます。

--skipダウンロードはある時点でタイムアウトする可能性があるため、このフラグは大きなフォルダーに役立ちます。その後、コマンドを再実行すると、--skipのように動作しますrsync

現時点では、--skipは比較的新しいフラグであり、gdriveGo 経由でインストールした場合に使用できます。システムgdriveに がない場合は、 なしで同じことを試してください。その後、本当に必要な場合は、 github の readme ページの説明に従って--skipを使用してインストールしてください。go get

答え2

私は PyDrive ライブラリを使用して、親フォルダー内のサブフォルダーとファイルを再帰的に取得できる Python コードを作成しました。次に、ファイルの ID を使用して、wget を使用して bash スクリプトを生成しました。

ステップ1 私はPyDriveライブラリを使用しました。このライブラリを使用するには、ここに記載されている手順を完了する必要があります。リンク

ステップ 2 次に、「client_secrets.json」ファイルを保存した同じ作業ディレクトリに Python スクリプトまたはノートブックを作成します。以下にノートブックを添付しました。

https://gist.github.com/immuntasir/73b8e8eef7e6c9066aaf2432bebf7db0

ステップ3 scp を使用して、「script.sh」をリモート サーバーにコピーします。 scp ~/path/script.sh username@ip:path

ステップ4 削除サーバーにログインし、パスに移動します。次に、次のコマンドを使用してスクリプトを実行可能にします。 chmod 777 script.sh スクリプトを実行すると、完了です。 ./script.sh

チュートリアルも書きました。こちらからご覧いただけます:https://medium.com/@immuntasir/python-wget と bash-script を使用して Google ドライブ フォルダのすべてのコンテンツを再帰的にダウンロードする d8f2c6b105d5

お役に立てれば!

答え3

ファイルIDはフォルダのURLアドレスにあります。

wget --no-check-certificate 'https://docs.google.com/uc?export=download&id=FILEID' -O FILENAME

関連情報