msdd’s blog

deep learning勉強中。プログラム関連のこと書きます。

新型コロナの防疫間無料のSpringer(シュプリンガー)の本をダウンロード

はじめに

Springerは新型コロナの防疫の間、無料で本(英語)をダウンロードできるようにしてくれている。

その本をダウンロードするスクリプトを提供している springer_free_books というリポジトリがある。それを使ってみる。

f:id:msdd:20200428184759j:plain:w700

使ってみる

anacondaで仮想環境を作って本をダウンロードしてした。

springer_free_booksという仮想環境を作った。pythonのバージョンは3.8。

conda create -n springer_free_books python=3.8

githubのリポジトリからzipを直接ダウンロードして、展開した。 展開したリポジトリのファイルをがある場所へ移動する。コマンドは各自、ダウンロードしたところへ移動するようにする。

cd ~/Downloads/springer_free_books-master/springer_free_books-master

必要なライブラリをreqirements.txtから一括インストールする。

pip install -r requirements.txt

ダウンロードスクリプトを実行する。

python main.py

プログレスバーが表示され、ダウンロード状況を表示してくれる。進行度の%、何個目の本か、 経過時間と残り時間の予測、1つダウンロードするのにかかる時間が表示されている。

f:id:msdd:20200428184743p:plain

downloadsフォルダが出来ており、中には、Behavioral ScienceComputer Scienceなどの本のカテゴリーのサブフォルダーが出来ていて、その中にpdfなどの形式で本がダウンロードされている。 エラーが出たら、Finish downloading.と出れば終わり。

途中でエラーが出ることもある。 Problem downloading: Multimedia Big Data Computing for IoT Applicationsのように、Problem downloading: + 本のタイトルの形で表示される。 https://link.springer.com/でタイトルを検索して、自分でダウンロードする必要がありそう。

実行してみると、約50分ほどで終わり、5冊ほどエラーが出ていた。ファイルサイズは15Gほどあった。 ドキュメントによると、409の英語の本をダウンロードして、14GB、4時間かかったとある。 とサイズが少し違った。

まとめ

Springerが無料で本をダウンロードできるようにしてくれている。 その本をダウンロードするスクリプトを使ってみた。 色々なジャンルの本があるので、おもしろそうなものがあれば読んでみたい。 Springerに感謝。