Subtitle downloader

By zenx on Jul 23, 2011

You can change it from finnish to any language, just check which languages subtitlesource.org supports.

#!/bin/bash

if [ "$1" == "" ]; then echo "Usage: ./ss (scan|folder) (dl)" ; echo "Example: ./ss Alphas.S01E02.720p.HDTV.x264-ORENJI dl" ; exit 0 ;fi

if [ "$1" == "scan" ]; then
    for i in `ls |sed 's/ /\./g'` ; do "$0" $i dl ; done
    exit 0
fi

rls="`echo $1 |grep -i -oE ".*S[0-9]+E[0-9]+" |sed 's/S[0-9][0-9]E[0-9][0-9]//'`"

if [ "$rls" == "" ]; then
        rls="`echo $1 |grep -i -oE ".*Part[0-9]" |sed 's/Part.*//'`"
        if [ "$rls" == "" ]; then
                rls="`echo $1 |grep -i -oE ".*(\.|_)20[0-9][0-9]"`"
                if [ "$rls" == "" ]; then
                        rls="`echo $1 |grep -i -oE ".*[\.|_)[0-9]+x([0-9]|[0-9][0-9])(\.|_)" |sed 's/[0-9]x[0-9][0-9]//' |sed 's/[0-9]x[0-9]//'`"
                        if [ "$rls" == "" ]; then
                                rls="`echo $1 |grep -i -oE ".*(720p.HDTV|HDTV|DSR|PDTV|Webrip)" |sed 's/720p.HDTV//' |sed 's/HDTV//' |sed 's/PDTV//' |sed 's/DSR//' |sed 's/Webrip//'`"
                        fi
                fi
        fi
fi

rls="`echo $1 |sed 's/[0-9][0-9][0-9][0-9]\..*//' |sed 's/UNRATED.*//' |sed 's/LIMITED.*//' |sed 's/REPACK.*//' |sed 's/PROPER.*//' |sed 's/RERip.*//' |sed 's/2010.*//' |sed 's/2011.*//' |sed 's/720p.*//' |sed 's/1080p.*//' |sed 's/BDRip.*//' |sed 's/DVDRip.*//' |sed 's/TS.*//' |sed 's/\.$//' |sed 's/\./ /g'`"
show="`echo $rls |sed 's/\.$//' |sed 's/\./ /g'`"
rls="`echo $rls |sed 's/\.$//' |sed 's/\./ /g' |sed 's/ /+/g'`"
imdbtt=`curl -s "http://www.subtitlesource.org/search/$rls" |grep -oE -m1 "tt[0-9]+\" title=\"[ a-zA-Z0-9]+\">$show \(" |cut -d '"' -f1`
sslink="http://www.subtitlesource.org/title/$imdbtt"
fin="`curl -s $sslink |grep $1 |grep download.gif |grep Finnish |grep -oE "/subs/[0-9]+" |sed 's/\/subs\///'`"
eng="`curl -s $sslink |grep $1 |grep download.gif |grep English |grep -oE "/subs/[0-9]+" |sed 's/\/subs\///'`"

if [ -d "$1" ]; then
    cd "$1"
    filename="`ls|uniq|grep -v -i sample |grep -v -i subs |sed 's/\.r[0-9][0-9]$//' |sed 's/\.part[0-9]\.rar//' |sed 's/\.part[0-9][0-9]\.rar//' |sed 's/\.part[0-9][0-9][0-9]\.rar//' |sed 's/\.nfo$//' |sed 's/\.sfv$//' |sed 's/\.rar$//' |sed 's/\.sub$//' |sed 's/\.srt$//' |uniq |tail -1`"
else
    filename="$1"
fi

if [ "$2" == "dl" ]; then

    if [[ "$fin" != "" ]]; then
        wget "http://subtitlesource.org/download/zip/$fin" -qO "$1.zip"
        unzip -q -o -p "$1.zip" > "$filename.srt"
        rm "$1.zip"
        echo "$1 ( Finnish )"
        exit 0
    fi

    if [[ "$eng" != "" ]]; then
        wget "http://subtitlesource.org/download/zip/$eng" -qO "$1.zip"
        unzip -q -o -p "$1.zip" > "$filename.srt"
        rm "$1.zip"
        echo "$1 ( English )"
        exit 0
    fi

else

        if [[ "$fin" != "" ]]; then echo "$1 - http://subtitlesource.org/download/zip/$fin ( Finnish )" ; exit 0 ;fi
        if [[ "$eng" != "" ]]; then echo "$1 - http://subtitlesource.org/download/zip/$eng ( English )" ; exit 0 ;fi

fi

Comments

Sign in to comment.
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.