Skip to content

Instantly share code, notes, and snippets.

@abhishekkr
Created November 24, 2012 00:39
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save abhishekkr/4137843 to your computer and use it in GitHub Desktop.
Save abhishekkr/4137843 to your computer and use it in GitHub Desktop.
shell.func-download-all-videos-of-any-event-on-CONFREAKS
# Usage Example: $ ddl-confreaks rubyconf2012 ~/Downloads/
# save it as /etc/profiles/ddl.confreaks.sh
##
## currently it checks for lowest resolution video mostly {640x360} and downloads it
function ddl-confreaks(){
if [ $# -ne 2 ];
then
echo 'Failed. Syntax: $> ddl-confreaks EVENT_NAME DOWNLOAD_PATH'
return
fi
event=$1
download_path=$2
event_url="http://confreaks.com/events/$event"
echo '[*] Getting all talk urls from the Event Page'
talk_urls=`curl -s $event_url | grep --color -A1 "title" | grep href | sed 's/.*href="/http:\/\/confreaks\.com/' | sed 's/".*//'`
echo '[*] Getting all MP4 Video URLs from the Talk Pages'
for lines in `echo $talk_urls | xargs -L1`;
do
xmp4_url=`echo $lines | xargs curl -s | grep 'application/x-mp4' | tail -1 | sed 's/.*href="//' | sed 's/".*//'`
if [ ! -z $xmp4_url ];
then
echo "Scanned: "$lines
mp4file=`echo $xmp4_url | sed 's/.*\///' | sed 's/\?.*//'`
save_as=$download_path"/"$mp4file
echo "Downloading URL: "$xmp4_url
echo "to "$save_as"....."
wget -c -O $save_as $xmp4_url
fi
done
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment