|
Home > Archive > Unix questions > December 2006 > google and youtube script ( auto resume auto filename )
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
google and youtube script ( auto resume auto filename )
|
|
| paulwvanc@yahoo.ca 2006-12-13, 7:24 am |
| hi
I see people asking for google and youtube video download scripts.
Here they are, with auto resume, auto filename. Great for downloading a
lot of videos.
youtube script is not entirely foolproof, since youtube servers are
flaky.
If you make improvement, please post.
Simply give a bunch of links as arguments.
USAGE:
youtube.sh 'http://www.youtube.com/watch?v=B4Ztn24AFrg'
'http://www.youtube.com/watch?v=mP91qkZFYqY'
google.sh
'http://video.google.com/videoplay?docid=-7837509539130010782'
'http://video.google.com/videoplay?docid=6855624764467039569'
#!/bin/bash -x
# youtube.sh
for arg in $@
do
rrr=`date +%s`
baseurl="http://youtube.com/get_video.php?"
wget $arg -O $rrr.urlsource.txt
fname=`grep '<title>' $rrr.urlsource.txt | sed "s/.*YouTube...//" \
| sed "s/<.*//"| sed "s/ /_/g" | sed "s/\//of/g" | sed "s/\~/_/g" \
| sed "s/(/_/g" | sed "s/)/_/g" | sed "s/__/_/g" `.flv
grep "player2.swf" $rrr.urlsource.txt > $rrr.url.info
cut -d? -f2 $rrr.url.info > $rrr.url
cut -d\" -f1 $rrr.url > $rrr.videoid
videourl=`cat $rrr.videoid`
fullurl=${baseurl}${videourl}
curl -I -L ${fullurl} > $rrr.txt
loc=`grep Location $rrr.txt | sed "s/Location: //"`
wget --read-timeout 3 -O $fname -t 0 -w 1 --waitretry=1 $loc
rm $rrr.urlsource.txt $rrr.url.info $rrr.url $rrr.videoid $rrr.txt
done
#!/bin/bash -x
# google.sh
for arg in $@
do
rrr=`date +%s`
wget $arg -O $rrr.urlsource.txt
fname=`grep '<title>' $rrr.urlsource.txt | sed "s/- Google Video.*//" |
\
sed "s/.*<title>//" | sed "s/:/_/g" | sed "s/ /_/g" | sed "s/\//of/g"
| \
sed "s/\~/_/g" | sed "s/(/_/g" | sed "s/)/_/g" | sed "s/__/_/g" | \
sed "s/__/_/g" `.avi
fname=`perl -e "use
HTML::Entities;print(decode_entities(\"$fname\"));"`
url="url="`perl -e "use CGI;print CGI::escape(\"$arg\");"`"&site=aa"
len=$(( `echo $url|wc -m` - 1 ))
curl http://s1947.gridserver.com/keepvid.php -d $url > $rrr.txt
loc=`cat $rrr.txt |grep 'avi - High Quality'|sed "s/.avi - High
Quality.*//" \
| sed "s/.*<a href=\"//" | sed "s/\".*//" | sed "s/amp;//g"`
rm $rrr.txt $rrr.urlsource.txt
wget --read-timeout 3 -O $fname -t 0 -w 1 --waitretry=1 $loc
done
| |
| Don Pearce 2006-12-13, 7:24 am |
| On 13 Dec 2006 01:32:18 -0800, paulwvanc@yahoo.ca wrote:
>hi
>
>I see people asking for google and youtube video download scripts.
>Here they are, with auto resume, auto filename. Great for downloading a
>lot of videos.
>youtube script is not entirely foolproof, since youtube servers are
>flaky.
>If you make improvement, please post.
>
>Simply give a bunch of links as arguments.
>USAGE:
>youtube.sh 'http://www.youtube.com/watch?v=B4Ztn24AFrg'
>'http://www.youtube.com/watch?v=mP91qkZFYqY'
>google.sh
>'http://video.google.com/videoplay?docid=-7837509539130010782'
>'http://video.google.com/videoplay?docid=6855624764467039569'
>
>#!/bin/bash -x
># youtube.sh
>for arg in $@
>do
>rrr=`date +%s`
>baseurl="http://youtube.com/get_video.php?"
>wget $arg -O $rrr.urlsource.txt
>fname=`grep '<title>' $rrr.urlsource.txt | sed "s/.*YouTube...//" \
> | sed "s/<.*//"| sed "s/ /_/g" | sed "s/\//of/g" | sed "s/\~/_/g" \
> | sed "s/(/_/g" | sed "s/)/_/g" | sed "s/__/_/g" `.flv
>grep "player2.swf" $rrr.urlsource.txt > $rrr.url.info
>cut -d? -f2 $rrr.url.info > $rrr.url
>cut -d\" -f1 $rrr.url > $rrr.videoid
>videourl=`cat $rrr.videoid`
>fullurl=${baseurl}${videourl}
>curl -I -L ${fullurl} > $rrr.txt
>loc=`grep Location $rrr.txt | sed "s/Location: //"`
>wget --read-timeout 3 -O $fname -t 0 -w 1 --waitretry=1 $loc
>rm $rrr.urlsource.txt $rrr.url.info $rrr.url $rrr.videoid $rrr.txt
>done
>
>
>#!/bin/bash -x
># google.sh
>for arg in $@
>do
>rrr=`date +%s`
>wget $arg -O $rrr.urlsource.txt
>fname=`grep '<title>' $rrr.urlsource.txt | sed "s/- Google Video.*//" |
>\
> sed "s/.*<title>//" | sed "s/:/_/g" | sed "s/ /_/g" | sed "s/\//of/g"
>| \
> sed "s/\~/_/g" | sed "s/(/_/g" | sed "s/)/_/g" | sed "s/__/_/g" | \
> sed "s/__/_/g" `.avi
>fname=`perl -e "use
>HTML::Entities;print(decode_entities(\"$fname\"));"`
>url="url="`perl -e "use CGI;print CGI::escape(\"$arg\");"`"&site=aa"
>len=$(( `echo $url|wc -m` - 1 ))
>curl http://s1947.gridserver.com/keepvid.php -d $url > $rrr.txt
>loc=`cat $rrr.txt |grep 'avi - High Quality'|sed "s/.avi - High
>Quality.*//" \
> | sed "s/.*<a href=\"//" | sed "s/\".*//" | sed "s/amp;//g"`
>rm $rrr.txt $rrr.urlsource.txt
>wget --read-timeout 3 -O $fname -t 0 -w 1 --waitretry=1 $loc
>done
Alternatively use Firefox with its download plugin. It works.
d
--
Pearce Consulting
http://www.pearce.uk.com
| |
| paulwvanc@yahoo.ca 2006-12-13, 7:24 am |
|
Don Pearce wrote:
> On 13 Dec 2006 01:32:18 -0800, paulwvanc@yahoo.ca wrote:
>
>
> Alternatively use Firefox with its download plugin. It works.
What happens when you need to download 211 episodes of Naruto?
>
> d
>
> --
> Pearce Consulting
> http://www.pearce.uk.com
| |
| sanjian 2006-12-13, 7:24 am |
| paulwvanc@yahoo.ca wrote:
> Don Pearce wrote:
[vbcol=seagreen]
>
> What happens when you need to download 211 episodes of Naruto?
You get the torrents. Watching an episode or two on youtube is one thing,
but if you're going to go and do 200+, get the larger, better-quality
version.
Then buy the R1 DVDs when they come out, Sharranyao!
| |
| Scott Dorsey 2006-12-13, 7:24 am |
| <paulwvanc@yahoo.ca> wrote:
>
>What happens when you need to download 211 episodes of Naruto?
You use a for/do loop in bash to call the script. However, you should not
hold the script author for the consequent brain damage that you get from
watching all that stuff.
--scott
--
"C'est un Nagra. C'est suisse, et tres, tres precis."
| |
| Bruce Tomlin 2006-12-13, 1:19 pm |
| In article <457fc971.334173312@text.usenet.plus.net>,
nospam@nospam.com (Don Pearce) wrote:
> Alternatively use Firefox with its download plugin. It works.
Also keepvid.com works for me.
| |
| Ansgar -59cobalt- Wiechers 2006-12-13, 7:22 pm |
| In rec.arts.anime.misc paulwvanc@yahoo.ca wrote:
> I see people asking for google and youtube video download scripts.
> Here they are, with auto resume, auto filename. Great for downloading a
> lot of videos.
> youtube script is not entirely foolproof, since youtube servers are
> flaky.
> If you make improvement, please post.
>
> Simply give a bunch of links as arguments.
> USAGE:
> youtube.sh 'http://www.youtube.com/watch?v=B4Ztn24AFrg'
> 'http://www.youtube.com/watch?v=mP91qkZFYqY'
> google.sh
> 'http://video.google.com/videoplay?docid=-7837509539130010782'
> 'http://video.google.com/videoplay?docid=6855624764467039569'
>
> #!/bin/bash -x
> # youtube.sh
> for arg in $@
> do
> rrr=`date +%s`
> baseurl="http://youtube.com/get_video.php?"
> wget $arg -O $rrr.urlsource.txt
> fname=`grep '<title>' $rrr.urlsource.txt | sed "s/.*YouTube...//" \
> | sed "s/<.*//"| sed "s/ /_/g" | sed "s/\//of/g" | sed "s/\~/_/g" \
> | sed "s/(/_/g" | sed "s/)/_/g" | sed "s/__/_/g" `.flv
> grep "player2.swf" $rrr.urlsource.txt > $rrr.url.info
> cut -d? -f2 $rrr.url.info > $rrr.url
> cut -d\" -f1 $rrr.url > $rrr.videoid
> videourl=`cat $rrr.videoid`
> fullurl=${baseurl}${videourl}
> curl -I -L ${fullurl} > $rrr.txt
> loc=`grep Location $rrr.txt | sed "s/Location: //"`
> wget --read-timeout 3 -O $fname -t 0 -w 1 --waitretry=1 $loc
> rm $rrr.urlsource.txt $rrr.url.info $rrr.url $rrr.videoid $rrr.txt
> done
Ouch. This is wrong in so many ways that I can't even begin to describe
it.
----8<----
#!/bin/bash
# youtube.sh
tmpfile="$(date +%s).urlsource.txt"
baseurl="http://youtube.com/get_video.php?"
CURLOPTS="-s -S"
max_retries=3
umask 077
for url in "$@"; do
curl ${CURLOPTS} -o "${tmpfile}" "${url}"
outputfile="$(awk '/<title>/ {
gsub(".*YouTube...|<.*|", "", $0);
gsub("/", "of", $0);
gsub("[ ~()]", "_", $0);
gsub("__*", "_", $0);
print $0
}' "${tmpfile}").flv"
videoid="$(awk '/player2\.swf/ {gsub("^.*\\?|\\\".*$", "", $0); print $0}' "${tmpfile}")"
location="$(curl ${CURLOPTS} -I -L "${baseurl}${videoid}" | awk '/Location: / {sub("\r", "", $2); print $2}')"
curl ${CURLOPTS} --retry ${max_retries} -o "${outputfile}" "${location}"
done
rm -f "${tmpfile}"
exit 0
---->8----
The other script is even worse.
F'up2colm
cu
59cobalt
--
"My surname is Li and my personal name is Kao, and there is a slight
flaw in my character."
--Li Kao (Barry Hughart: Bridge of Birds)
| |
| S.t.A.n.L.e.E 2006-12-13, 7:22 pm |
| Wed, 13 Dec 2006 9:36am-0000, Don Pearce <nospam@nospam.com>:
>
> Alternatively use Firefox with its download plugin. It works.
>
http://vixy.net/flv_converter
Laters. =)
Stan
--
_______ ________ _______ ____ ___ ___ ______ ______
| __|__ __| _ | \ | | | | _____| _____|
|__ | | | | _ | |\ | |___| ____|| ____|
|_______| |__| |__| |__|___| \ ___|_______|______|______|
__| | ( )
/ _ | |/ LostRune+sig [at] UofR [dot] net
| ( _| | http://www.uofr.net/~lostrune/
\ ______| _______ ____ ___
/ \ / \ | _ | \ | |
/ \/ \| _ | |\ |
/___/\/\___|__| |__|___| \ ___|
|
|
|
|
|