ぎじゅつめも

とある工学系学生が学んだことをメモするだけのブログです。

SlideshareからスライドをDL/画像DL【wget,python】

Slideshareのスライドをオフラインでも手元で確認したいことがあったので、手元にPDFとして保存できる手順をまとめました。(DLボタンが無い場合のDL方法です)

手順1.画像のクローリング

Slideshare上のスライド画像ファイルを、クローラを使ってDLします。ここでは、クローラとしてwget、言語としてPythonを用いることにします。

以下のコードを実行すれば画像を取得できます。

#!/usr/bin/env python
#coding:utf-8
import os
for x in range(ページ数-1):
    cmd = "wget https://image.slidesharecdn.com/該当パス" + str(x+1) + "固定番号.jpg"
    os.system(cmd)

具体例

例えば、
ChordアルゴリズムによるDHT入門からスライド画像ファイルをDLする場合は以下のようにします。

#!/usr/bin/env python
#coding:utf-8
import os
for x in range(335):
    cmd = "wget https://image.slidesharecdn.com/20110219chord004pict-110219072300-phpapp02/95/chorddht-" + str(x+1) + "-728.jpg"
    os.system(cmd)

実行時は、sudoなりをつけてwgetが通るようにしておきます。

手順2.DLした画像ファイルをPDFとして統合

ImageMagickを使って複数の画像をPDFへ変換します。
※参考サイト様:*1

以下のコマンドを実行すればOKです。

sudo convert 'ls -v' *.jpg 出力ファイル名.pdf

最後に(補足)

同様の手順(クロール技術)を応用すれば、Slideshare以外のサイトからファイルを取得してまとめることもできます。
ただし、時間当たりのクローリング回数が多いと対象サーバに思った以上の負荷を与えかねないので注意したいところです。