#!/bin/bash
#
# Vacuum Video script for get URLs of videos from various sites
# version 0.20
#
# Copyright (C) 2009-2012 Artem Kurashov
# License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
#

# Arguments count
if [ "$#" -lt 1 ]; then
echo "usage: vacuumvideoscript url_of_webpage_with_video"
exit
fi
# Domain name extraction
BASE_URL_PART=`echo "$1" | sed 's/^.*:\/\///;s/\/.*$//'`
# Get URL of video
# More than one method
# Switch by domain name
case $BASE_URL_PART in
*www.funnyhub.com* )
echo "`wget -O- $1 | grep '"flv"' | sed 's/^.*http/http/;s/\.flv.*$/\.flv/'`"
;;
*www.liveleak.com* )
echo "`wget -O- $1 | grep file: | sed 's/^.*http/http/;s/", type:.*$//'`"
;;
*vbox7.com* )
VIDID=`echo "$1" | sed 's/^.*://'`
VPREF="magare.do"
echo "`wget -O- --post-data="vid=$VIDID" http://$BASE_URL_PART/play/$VPREF | \
sed 's/^.*http/http/;s/\&//'`"
;;
*video.bigmir.net* )
echo "`wget -O- $1 | grep -E "^so.addVariable" | grep movie_url | \
sed 's/^.*http/http/;s/...$//;s/http%3A%2F%2Fflv/http:\/\/flv/;\
s/flv%3Fm%3D/flv\\?m=/;s/%2F/\//g;s/\\\./\./g'`"
;;
*video.privet.ru* )
echo "`wget -O- $1 | grep flashvars | tail -n 1 | \
sed 's/^.*file=http/http/;s/\&.*$//'`"
;;
*video.sibnet.ru* )
echo "http://video.sibnet.ru/%2Fupload%2Fvideo%2F`echo "$1" | sed 's/^.*video//;s/.$//'`.flv"
;;
*youtube.com* )
PAGEPATH=`echo "$1" | sed 's/\/v\//\/watch\\?v=/'`
echo "`wget -O- $PAGEPATH | grep yt.playerConfig\ = | \
sed 's/\\u0026quality.*$//;s/^.*http/http/;s/%3A/:/g;s/%252F/\//g;s/%253A/:/g;s/%2526/\&/g;s/%253F/\?/g;s/%253D/=/g;s/%3D/=/g;s/%252C/,/g;s/%26/\&/g;s/%2F/\//g;s/%3F/\?/g;s/.$//'`"
;;
*clips.rofl.to* )
echo "`wget -O- $1 | grep video-player | sed 's/.flv.*$/.flv/;s/^.*http/http/'`"
;;
*www.dukaramba.com* )
echo "http://www.dukaramba.com/`wget -O- $1 | grep file., | \
sed 's/^.*files/files/;s/..;$//'`"
;;
*www.220.ro* )
echo "`wget -O- $1 | grep flashVars | head -n 1 | \
sed 's/.preview.*$//;s/^.*videoURL=//;s/%2F/\//g;
s/%3A/:/g;s/%3F/?/g;s/%3D/=/g'`"
;;
*snotr.ru* )
vid=`echo "$1" | awk -F/ '{print $4}' | sed 's/\.html$//'`
echo "http://videos.snotr.com/$vid.flv"
;;
*www.zkouknito.cz* )
PAGEPATH="http://www.zkouknito.cz/player/scripts/videoinfo.php?id=`echo "$1" | sed 's/^.*video_//;s/_.*$//'`"
echo "`wget -O- $PAGEPATH | grep flv | sed 's/\.flv.*$/.flv/;s/^.*<.*>//'`"
;;
*vidmax.com* )
echo "`wget -O- $1 | grep file= | sed 's/^.*file=//;s/\.flv.*$/.flv/'`"
;;
*liveinternet.ru* )
VIDID=`echo "$1" | sed 's/^.*post//;s/\/.*$//'`
PAGEPATH="http://www.liveinternet.ru/playlist.php?a=get_v&v=6&id=$VIDID"
echo "`wget -O- $PAGEPATH | grep \<videofile | \
sed 's/\.flv.*$/\.flv/;s/^.*"//'`"
;;
*video.a.ua* )
echo "`wget -O- $1 | grep flashvars= | head -n 1 | \
sed 's/^.*file=//;s/\.flv.*$/.flv/'`"
;;
*funnyjunk.com* )
echo "`wget -O- $1 | grep clip: | sed 's/^.*http/http/;s/..$//'`"
;;
*supershare.net* )
echo "`wget -O- $1 | grep .flv | sed 's/^.*http/http/;s/...$//'`"
;;
*autsch.de* )
echo "`wget -O- $1 | grep \.flv | head -n 1 | sed 's/^.*http/http/;s/...$//'`"
;;
*myvideo.co.za* )
echo "`wget -O- $1 | grep .flv | head -n 1 | \
sed 's/\.flv.*$/.flv/;s/^.*http/http/'`"
;;
*clipmoon.com* )
VIDID=`echo "$1" | awk -F/ '{print $5}'`
PAGEPATH="http://www.clipmoon.com/flvplayer.php?viewkey=$VIDID"
echo "`wget -O- $PAGEPATH | grep .flv | sed 's/\.flv.*$/.flv/;s/^.*http/http/'`"
;;
*aajkatv.com* )
VIDID=`echo "$1" | sed 's/^.*id=//'`
echo "http://aajkatv.com/v_$VIDID.public.flv"
;;
*filmupload.de* )
echo "`wget -O- $1 | grep data= | head -n 1 | \
sed 's/\.flv.*$/.flv/;s/^.*http/http/'`"
;;
*qubetv.tv* )
VIDID=`echo "$1" | awk -F/ '{print $6}'`
echo "http://qubetv.tv/videos/$VIDID/$VIDID.flv"
;;
*mytopclip.com* )
echo "`wget -O- $1 | grep flashvars | grep .flv | \
sed 's/\.flv.*$/.flv/;s/^.*http/http/'`"
;;
*videopalomnik.ru* )
VIDID=`echo "$1" | awk -F/ '{print $5}'`
echo "http://videopalomnik.ru/flvideo/$VIDID.flv"
;;
*ostrim.ru* )
echo "http://ostrim.ru/video/`echo "$1" | sed 's/\.htm//' | \
awk -F/ '{print $5}'`.flv"
;;
*kaztube.kz* )
echo "`echo "$1" | sed 's/www.kaztube.kz/web1.kaztube.kz/;s/.$/&\.flv/'`"
;;
*video.ukrhome.net* )
PAGEPATH="http://video.ukrhome.net/xml.settings/`echo "$1" | \
awk -F/ '{print $7}'`"
echo "`wget -O- $PAGEPATH | grep flv\ = | \
sed 's/\.flv.*$/\.flv/;s/^.*http/http/'`"
;;
*www.tubewatcher.tv* )
echo "http://www.tubewatcher.tv/video/`wget -O- $1 | grep file: | \
sed 's/^.*:\ \"//;s/".*$//'`"
;;
*www.ochevidets.ru* )
echo "`wget -O- $1 | grep flashvars= | head -n 1 | \
sed 's/^.*http/http/;s/\".*$//'`"
;;
*www.video.ca* )
echo "`wget -O- $1 | grep videoPath=h | \
sed 's/\.flv.*$/\.flv/;s/^.*http/http/'`"
;;
*videos.sapo.pt* )
echo "http://rd3.videos.sapo.pt/`echo "$1" | awk -F/ '{print $4}'`/mov"
;;
*filmix.net* )
echo "`wget -O- $1 | grep flashvars | head -n 1 | \
sed 's/\ /%20/g;s/^.*http/http/;s/\.flv.*$/\.flv/'`"
;;
*vidiload.com* )
echo "`wget -O- $1 | grep \.flv | sed 's/\.flv.*$/\.flv/;s/^.*http/http/'`"
;;
*extremevidazz.com* )
VIDID=`echo "$1" | sed 's/^.*video_id=//;s/\&.*$//'`
PAGEPATH="http://extremevidazz.com/videoConfigXmlCode.php?pg=video_`echo "$VIDID"`_no_0"
echo "`wget -O- $PAGEPATH | grep FLVPath | \
sed 's/^.*http/http/;s/\.flv.*$/\.flv/'`"
;;
*www.thatvideosite.com* )
echo "`wget -O- $1 | grep flashvars= | \
sed 's/^.*http/http/;s/.autostart.*$//'`"
;;
*tube.perm.ru* )
VIDID=`echo "$1" | awk -F/ '{print $5}'`
echo "http://tube.perm.ru/get_video/$VIDID.flv"
esac
