 鲜花( 3)  鸡蛋( 0)
|
以英勇勋章为例5 e6 ~; P9 t( Q
http://www.youtube.com/watch?v=aPXlIjgaHQ4
% H- q# y/ \6 H0 r6 w0 DaPXlIjgaHQ4为ID1
$ M% o6 V* K5 X6 \8 p& B, {$ f# M% s, K4 Y8 Z& A
用浏览器打开链接时,查看page source,搜索 watch_fullscreen,有一句如下
7 |; R7 `3 Y6 ~* t6 Ovar 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=青天白日旗飞扬—献给国民革命军—英勇勋章(後段都是真实的抗战照片)';# t1 j( l' E% M- X3 z
在fmt_map后面两个&之间的文字,得到ID2* ~6 z0 c: s7 [( t' I- z
t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK' P+ W8 S' ?' X, k9 Z3 K8 `
+ r, j! I$ q2 g) }8 r4 j
和前面的ID1一起,组成链接1 Z+ E/ q; h' C% a) ]9 T
http ://www.youtube.com/get_video?video_id=ID1&ID2,即是$ k' U3 `+ t# G
http ://www.youtube.com/get_video?video_id=aPXlIjgaHQ4&t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK
4 T* D. s ]9 f) p, l9 y(现在这个链接无效)
+ r+ |3 v, {" v- T1 g把这个链接拷贝到浏览器地址栏,回车后是下载而不是播放这个视频,格式:.flv( c+ K& w3 _7 ?% D. M% m8 L. [
每次浏览器打开同一视频后得到的ID2不一样,有有效时间限制
1 Y6 |4 p& D# v* [
, ?- N; D" T" Q1 g' }1 o9 Wyoutube总是改动ID2位置,但基本原理一致- c* W( ~8 x6 m/ T
. b7 ?1 ], A, o j5 Q1 Q, q
linux的下载script:youtube.sh
; \% k3 C6 E& q* r#!/bin/sh- Y! ~* _. `1 B9 _8 r. i3 w
, f9 |, T/ K Tif [ "$#" != "1" ]; then$ }5 J, F3 ? a
exit 64
) E- K+ ^5 R$ Nfi
6 k- M* N. a4 H4 O ]4 @5 Q0 p* P! X3 k- ^6 I& W. A5 ?! L' t
VID=$(echo "$1"|sed "s/.*v=\([^&]*\).*/\1/")
V" O, w5 Z7 [ |URL1="http://www.youtube.com/watch?v=$VID"
- K5 h/ j% m" V+ }PARAM="$(wget -q -O - "$URL1"|grep watch_fullscreen|cut -d '&' -f 8)"3 M" B& O }( m1 w) U
URL2="http://www.youtube.com/get_video?video_id=$VID&$PARAM"" }2 i- n. h" P& a) h K6 t3 O
exec wget -O "$VID.flv" "$URL2"
9 U' [3 G y; s0 f* a# Z0 S用法:
0 g0 ~4 p1 B0 G! k& v; K! @8 L/ G, R
./youtube.sh http ://www.youtube.com/watch?v=aPXlIjgaHQ4[/url]
/ w9 B5 `, q% \/ f, w3 {得到 aPXlIjgaHQ4.flv,用ffmpeg可以转换成mp3 mp4 mpg等.
/ e8 G9 e9 H% ?* r$ G7 T% t% e, A( R+ i( G# m
[ 本帖最后由 夜明砂 于 2008-10-2 12:25 编辑 ] |
|