From 8d1db20b8c6a2b0fbb58a6b87d73808897374db1 Mon Sep 17 00:00:00 2001 From: overflowerror Date: Fri, 6 Jan 2017 16:25:24 +0100 Subject: [PATCH] yes --- movie-dl | 111 +++++++++++++++++++++++++++++++++++++++++++ series-dl | 137 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 248 insertions(+) create mode 100755 movie-dl create mode 100755 series-dl diff --git a/movie-dl b/movie-dl new file mode 100755 index 0000000..2ca2dc1 --- /dev/null +++ b/movie-dl @@ -0,0 +1,111 @@ +#!/bin/bash + +domain="http://putlockers.ch" + +search="$1" +file="$2" + +echo "Searching for \"$search\"..." + +results="$(wget -O - "$domain/search/search.php?q=$search" 2> /dev/null | sed "s/ /dev/null; then + url=$(echo "$results" | sed -n "${n}p") + name=$(echo $url | awk -F\" '{ print $2}') + url=$(echo $url | awk '{ print $1}') + break + else + echo "Please type a number from 1 to $num." + fi + done +else + name=$(echo $results | awk -F\" '{ print $2 }') + url=$(echo $results | awk '{ print $1 }') +fi + +echo +echo $name it is. +echo + +if test "$file" = ""; then + echo "No file given." + echo Use \"$name.mp4\"? + read -p "yes/no: " yn + if test "$yn" = "yes" -o "$yn" = "YES" -o "$yn" = "y"; then + name="$name.mp4" + else + echo Aborting. + exit 0 + fi +fi + +if test "$file" = "debug"; then + echo "URL: $url" + exit 0 +fi + +ydlw() { + lshift="$2" + file="$3" + + youtube-dl -o "$file" --newline --no-warnings "$1" 2> /dev/null | grep --line-buffered "[download]" | grep --line-buffered "% of " | while read line; do + value=$(echo $line | awk '{ print $2 }' | awk -F% '{ print $1}') + steps=40 + scaled=$(printf %.0f $(echo $value \* $steps / 100 + 0.5 | bc)) + echo -ne "$lshift[" + for i in $(seq 1 $steps); do + if test $scaled -ge $i; then + echo -ne \# + else + echo -ne " " + fi + done + echo -ne "] ($value%) \r" + done + if test ${PIPESTATUS[0]} != 0; then + return -1 + fi + echo + echo "${lshift}Done." + return 0 +} + +echo + +mirror=1 +wget -O - "$url" 2>/dev/null | grep "Version" | awk -F"href" '{ print $2 }' | awk -F\" '{ print $2 }' | while read line; do + echo "Trying mirror $mirror..." + ydlw "$line" " " "$file" + if test $? = 0; then + echo "SUCCESS!" + exit 42 + fi + echo " nope" + mirror=$((mirror+1)) +done +if test $? = 42; then + exit 0 +fi + +echo "FAIL!" + diff --git a/series-dl b/series-dl new file mode 100755 index 0000000..0d04b44 --- /dev/null +++ b/series-dl @@ -0,0 +1,137 @@ +#!/bin/bash + +signalhandler() { + echo + echo "Signal caught." + pkill -TERM -P $$ + exit 9 +} + +trap signalhandler SIGHUP SIGINT SIGTERM + +host="http://serienstream.to" +search=$1 + +echo "Searching for \"$search\"..." + +url=$(wget -cO - "$host/serien" 2> /dev/null | grep -B 1 "$search" | grep "/serie/stream/" | awk -F"\"" '{ print $2 }') + +if test "$url" = ""; then + echo " Not found." + exit 1 +fi + +name=$(echo $url | awk -F/ '{ print $4 }') + +if test $(echo $name | wc -l) != 1; then + echo name | while read line; do + echo " - $line" + done + exit 0 +fi + +echo " found $name"; + +seasons=$(wget -cO - "$host$url" 2> /dev/null | grep "title=\"Staffel" | grep -v "data-episode" | wc -l) + +echo +echo "There are $seasons seasons." + +season=$2 + +if test "$season" = "search"; then + exit 0 +fi + +dls() { + host=$1 + url=$2 + season=$3 + + episodes=$(wget -cO - "$host$url/staffel-$season" 2> /dev/null | grep "title=\"Staffel" | grep "data-episode" | wc -l) + + echo "Downloading season $season ($episodes episodes)..." + + mkdir -p $name/s$season + pushd $name/s$season > /dev/null + + for i in $(seq 1 $episodes); do + echo " episode $i ..." + dl $host $url $season $i + if test $? != 0; then + echo " FAILED!" + else + echo " SUCCESS!" + fi + done + + popd > /dev/null + + echo "Done" + +} + +ydlw() { + lshift="$2" + file="$3" + + youtube-dl -o "$file" --newline --no-warnings "$1" 2> /dev/null | grep --line-buffered "[download]" | grep --line-buffered "% of " | while read line; do + value=$(echo $line | awk '{ print $2 }' | awk -F% '{ print $1}') + steps=40 + scaled=$(printf %.0f $(echo $value \* $steps / 100 + 0.5 | bc)) + echo -ne "$lshift[" + for i in $(seq 1 $steps); do + if test $scaled -ge $i; then + echo -ne \# + else + echo -ne " " + fi + done + echo -ne "] ($value%) \r" + done + if test ${PIPESTATUS[0]} != 0; then + return -1 + fi + echo + echo "${lshift}Done." + return 0 +} + +dl() { + host=$1 + url=$2 + name=$(echo $url | awk -F/ '{ print $4 }') + season=$3 + episode=$4 + + wget -cO - "$host/$url/staffel-$season/episode-$episode" 2> /dev/null | grep "