Slideshare ダウンロード&PDF作成シェルスクリプト

ImageMagickのconvertを利用している。あとwgetとsedくらい入ってるっしょ。

 

#!/bin/sh

USAGE="usage: $0 [USER NAME] [SLIDE NAME]"
if [ $# -lt 2 ]; then
echo >&2 $USAGE
    exit 1
fi

USER_NAME=$1
SLIDE_NAME=$2
SLIDESHARE_URL="http://www.slideshare.net/"

TITLE=""
PDF_NAME=""

wget -nv --content-disposition $SLIDESHARE_URL/$USER_NAME/$SLIDE_NAME --output-document=tmp.html
wait

CNT=0
while read line
do
    TITLE=`echo $line | sed -n -e "s/.*<title>\(.*\)<\/title>.*/\1/p"`
    PNG_URL=`echo $line | sed -n -e "s/.*data-full=\"\(.*\)\" .*/\1/p"`

    TITLE=`echo $TITLE`
    PNG_URL=`echo $PNG_URL`
    if [ ${#TITLE} -ne 0 ]; then
        echo $PDF_NAME
        PDF_NAME=`echo $TITLE`
    fi

    if [ ${#PNG_URL} -ne 0 ]; then
        echo $PNG_URL
        CNT=`expr $CNT + 1`
        wget -nv --content-disposition $PNG_URL --output-document=${CNT}.png
    fi
done < tmp.html

convert $(for i in $(seq 1 $CNT); do echo ${i}.png; done) ${PDF_NAME}.pdf

rm -f *.png
rm -f tmp.html