Help us understand the problem. What is going on with this article?

curlやwgetで公開済みGoogle Driveデータをダウンロードする

More than 1 year has passed since last update.

サーバー上での作業などで,とりあえずcurlとかwgetでGoogle Drive上の一般公開されているデータをダウンロードしたいといったときの対処方法です.

ファイルサイズが小さい場合

ファイルを右クリック > 共有可能なリンクを取得 > FILE_ID("id="以降の文字列)を取得し,

wget "https://drive.google.com/uc?export=download&id=<FILE_ID>" -O <FILE_NAME>

の形式でダウンロードすることができます.

image.png

image.png

例: CRF++のダウンロード

Google Driveにアクセスしてみると

https://drive.google.com/drive/u/1/folders/0B4y35FiV1wh7fngteFhHQUN2Y1B5eUJBNHZUemJYQV9VWlBUb3JlX0xBdWVZTWtSbVBneU0

共有可能なリンクは

https://drive.google.com/open?id=0B4y35FiV1wh7QVR6VXJ5dWExSTQ

となっているので,

wget "https://drive.google.com/uc?export=download&id=0B4y35FiV1wh7QVR6VXJ5dWExSTQ" -O CRF++-0.58.tar.gz

とすればダウンロードできます.

ファイルサイズが大きい場合

ファイルサイズの小さい場合と手順は同じですが,「ファイルのウイルス スキャンが実行できません」という確認ダイアログが出るため,もう一手間必要になります.

image.png

中身を調べてみるとconfirm=XXXXという四文字のランダムな文字列が追加で必要とわかるので,

curl -sc /tmp/cookie "https://drive.google.com/uc?export=download&id=<FILE_ID>" > /dev/null
CODE="$(awk '/_warning_/ {print $NF}' /tmp/cookie)"  
curl -Lb /tmp/cookie "https://drive.google.com/uc?export=download&confirm=${CODE}&id=<FILE_ID>" -o <FILE_NAME>

として4文字のパスを引っこ抜く処理を追加すればダウンロードできます.

例: CaboChaのダウンロード

cabocha-0.69.tar.bz2をダウンロードする例です.

https://drive.google.com/drive/u/1/folders/0B4y35FiV1wh7cGRCUUJHVTNJRnM

からFILE_ID="0B4y35FiV1wh7SDd1Q1dUQkZQaUU"を入手します.

FILE_ID=0B4y35FiV1wh7SDd1Q1dUQkZQaUU
FILE_NAME=cabocha-0.69.tar.bz2
curl -sc /tmp/cookie "https://drive.google.com/uc?export=download&id=${FILE_ID}" > /dev/null
CODE="$(awk '/_warning_/ {print $NF}' /tmp/cookie)"  
curl -Lb /tmp/cookie "https://drive.google.com/uc?export=download&confirm=${CODE}&id=${FILE_ID}" -o ${FILE_NAME}
namakemono
MNES Engineer Kaggle Expert
https://www.mnes.org/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした