 鲜花( 3)  鸡蛋( 0)
|
以英勇勋章为例
. Z, J0 K$ f- a$ e1 \7 zhttp://www.youtube.com/watch?v=aPXlIjgaHQ4
9 I5 p8 c; o+ j% o; |# i, aaPXlIjgaHQ4为ID1* Y/ t+ ^9 }! a# b
5 R( \/ a* V* \9 ^
用浏览器打开链接时,查看page source,搜索 watch_fullscreen,有一句如下
* M6 V8 `2 s" ?- Svar fullscreenUrl = '/watch_fullscreen?fs=1&q=%25E9%259D%2592%25E5%25A4%25A9%25E7%2599%25BD%25E6%2597%25A5&vq=None&sourceid=ys&video_id=aPXlIjgaHQ4&l=272&sk=yZl4ubdwkdUMWq_tbpmcGH2rlQNzNM_jC&fmt_map=6%2F720000%2F7%2F0%2F0&t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK&hl=en&plid=AARYH5sPzVmXFr0ZAAAAoAAIIAE&title=青天白日旗飞扬—献给国民革命军—英勇勋章(後段都是真实的抗战照片)';
3 n2 L- v/ W2 C在fmt_map后面两个&之间的文字,得到ID2
; x$ P+ u4 p$ Z) {5 e0 G8 ~7 a& \& Ht=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK
( l" k7 H" B0 _( [3 @+ P0 D7 o$ N& }1 a
和前面的ID1一起,组成链接+ T1 k9 h2 o5 B n6 L
http ://www.youtube.com/get_video?video_id=ID1&ID2,即是5 s0 ?2 O* g1 v
http ://www.youtube.com/get_video?video_id=aPXlIjgaHQ4&t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK
c5 [7 Y& W' Y; t' K6 K(现在这个链接无效)
, j$ O7 T% d6 |4 B* d把这个链接拷贝到浏览器地址栏,回车后是下载而不是播放这个视频,格式:.flv
* N& e+ z) K- V0 F1 O每次浏览器打开同一视频后得到的ID2不一样,有有效时间限制5 w. G' o$ k0 a q1 D
$ u0 V: T' H' K, g) v# c2 Q! |; B
youtube总是改动ID2位置,但基本原理一致6 ~* w7 f7 @" {7 G6 r& K
* C3 q7 |' O, Y
linux的下载script:youtube.sh
E8 N# Q" `- S% e* n, K7 n#!/bin/sh
& X+ A8 Y. J; `) y5 Y/ \- {9 O6 S6 _2 G0 L9 N: J9 M9 `) J+ A
if [ "$#" != "1" ]; then
7 g ^2 L1 ?( {: ] exit 641 Q$ s/ Q' z2 {+ X( q# u
fi7 l, n# ?2 ?" M
6 r" r5 l3 j( A4 o! HVID=$(echo "$1"|sed "s/.*v=\([^&]*\).*/\1/")
: N+ }. H7 F' ]! H9 xURL1="http://www.youtube.com/watch?v=$VID"
0 h# d+ p; L: t8 p/ v3 ePARAM="$(wget -q -O - "$URL1"|grep watch_fullscreen|cut -d '&' -f 8)"
0 r2 U% C6 `" hURL2="http://www.youtube.com/get_video?video_id=$VID&$PARAM"
9 t* `- |$ o$ S1 L/ x \exec wget -O "$VID.flv" "$URL2"
+ s8 z0 |1 a" y2 S) `( @用法:
# [/ q" ]" T: ^
2 X, E# T1 _- c( {) p& q& L4 r2 y./youtube.sh http ://www.youtube.com/watch?v=aPXlIjgaHQ4[/url]6 } W+ p A4 k
得到 aPXlIjgaHQ4.flv,用ffmpeg可以转换成mp3 mp4 mpg等.
- w! m0 A% l+ `4 }5 b7 z$ q) a' T/ _' n2 K8 R3 M% {
[ 本帖最后由 夜明砂 于 2008-10-2 12:25 编辑 ] |
|