Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- DEBUG=1
- LOC_BASE=/home/kaito/fakku
- LOC_OUTPUT=${LOC_BASE}/Output
- LOC_QUEUE=${LOC_BASE}/download.txt
- LOC_TEMP=${LOC_BASE}/Temp
- echo "################# Fakku Download Script by Crashmaxed #################"
- echo "################# Fixed by Aishou ;) #################"
- echo ""
- for RAW_URL in `cat $LOC_QUEUE`
- do
- DOUJIN_URL_RAW=$RAW_URL
- echo "Raw URL: $DOUJIN_URL_RAW"
- DOUJIN_URL_STRIPPED=`echo ${DOUJIN_URL_RAW} | sed 's/\/read//g'`
- if [[ DEBUG -eq 1 ]]; then echo ">> Stripped URL: $DOUJIN_URL_STRIPPED"; fi
- echo ">> Getting Doujin Metadata..."
- wget -qt 3 -O ${LOC_TEMP}/main.html $DOUJIN_URL_STRIPPED
- WGET_STATUS=$?
- if [[ WGET_STATUS -ne 0 ]]
- then
- continue
- fi
- wget -qt 3 -O ${LOC_TEMP}/read.html ${DOUJIN_URL_STRIPPED}/read
- WGET_STATUS=$?
- if [[ WGET_STATUS -ne 0 ]]
- then
- continue
- fi
- if [[ DEBUG -eq 1 ]]; then echo ">> Getting Doujin Pagecount..."; fi
- DOUJIN_PAGECOUNT=`cat ${LOC_TEMP}/main.html\
- | grep -P "[0-9]+ favorites.*[0-9]+</b> pages"\
- | grep -oP "[0-9]+</b> pages"\
- | grep -oP "[0-9]+"`
- if [[ DEBUG -eq 1 ]]; then echo ">> Getting Doujin Series..."; fi
- DOUJIN_SERIES=`cat ${LOC_TEMP}/main.html\
- | grep -P "Series:[ ]+<a href=\"/series"\
- | grep -oP "<a href=\"/series/[^>]*>[^<]*</a>"\
- | sed -r 's/<[^>]*>//g'`
- if [[ DEBUG -eq 1 ]]; then echo ">> Getting Doujin Artist..."; fi
- DOUJIN_ARTIST=`cat ${LOC_TEMP}/main.html\
- | grep -P "Artist:[ ]+<a href=\"/artists"\
- | grep -oP "<a href=\"/artists/[^>]*>[^<]*</a>"\
- | sed -r 's/<[^>]*>//g'`
- if [[ DEBUG -eq 1 ]]; then echo ">> Getting Doujin Title..."; fi
- DOUJIN_TITLE=`cat ${LOC_TEMP}/main.html\
- | grep -oP "<h1 itemprop=\"name\">[^<]*</h1>"\
- | sed -r 's/<[^>]*>//g'`
- if [[ DEBUG -eq 1 ]]; then echo ">> Getting Doujin Language..."; fi
- DOUJIN_LANG=`cat ${LOC_TEMP}/main.html\
- | grep "<div class=\"right\">Language:" -A5\
- | grep -oP "<a href=\"/[^>]*>[a-zA-Z]*</a>"\
- | sed -r 's/<[^>]*>//g'`
- DOUJIN_LANG=`echo $DOUJIN_LANG | tr [:lower:] [:upper:]`
- if [[ DEBUG -eq 1 ]]; then echo ">> Raw Doujin Lang: $DOUJIN_LANG"; fi
- if [[ $DOUJIN_LANG == "ENGLISH" ]]
- then
- DOUJIN_LANG="EN"
- elif [[ $DOUJIN_LANG == "JAPANESE" ]]
- then
- DOUJIN_LANG="JP"
- else
- DOUJIN_LANG="OTHER"
- fi
- echo ">> Title: $DOUJIN_TITLE"
- echo ">> Series: $DOUJIN_SERIES"
- echo ">> Artist: $DOUJIN_ARTIST"
- echo ">> Pages: $DOUJIN_PAGECOUNT"
- echo ">> Language: $DOUJIN_LANG"
- IMG_PATH=`cat ${LOC_TEMP}/read.html\
- | grep "function imgpath" -A5\
- | grep -oP "http://cdn.fakku.net[^']+"`
- if [[ DEBUG -eq 1 ]]; then echo ">> Image Path: $IMG_PATH"; fi
- echo ">> Downloading Images..."
- cd $LOC_TEMP
- for PAGE in `seq 1 $DOUJIN_PAGECOUNT`
- do
- PAGE_PADDED=`printf "%03s" 00$PAGE` # The Fix
- if [[ PAGE -gt 9 ]] # Fixed Page Numbers over 9.
- then
- PAGE_PADDED=`printf "%03s" 0$PAGE`
- fi
- if [[ PAGE -gt 99 ]] # Fixed Page Numbers over 99.
- then
- PAGE_PADDED=`printf "%03s" $PAGE`
- fi
- echo "Downloading page ${PAGE} of ${DOUJIN_PAGECOUNT}..."
- wget -qt 3 ${IMG_PATH}/${PAGE_PADDED}.jpg
- echo ">> ${IMG_PATH}/${PAGE_PADDED}.jpg"
- WGET_STATUS=$?
- if [[ WGET_STATUS -ne 0 ]]
- then
- continue
- fi
- done
- DOUJIN_TITLE_FORMAT="${DOUJIN_TITLE} - ${DOUJIN_SERIES} [${DOUJIN_LANG}] [${DOUJIN_ARTIST}]"
- echo "Doujin Title: $DOUJIN_TITLE_FORMAT"
- echo ""
- zip -q9 "${LOC_OUTPUT}/${DOUJIN_TITLE_FORMAT}" *.jpg
- cd $LOC_TEMP
- rm -rf *.jpg
- rm -rf *.html
- done
Advertisement
Add Comment
Please, Sign In to add comment