 鲜花( 3)  鸡蛋( 0)
|
以英勇勋章为例# }' Z; [' ?. i; u6 P. \4 C
http://www.youtube.com/watch?v=aPXlIjgaHQ4& r9 t/ N2 F% }
aPXlIjgaHQ4为ID1' U4 s' i/ b+ U0 c! @
. {% i$ D. j7 ~ ?6 `
用浏览器打开链接时,查看page source,搜索 watch_fullscreen,有一句如下3 ^- w) S( E% V
var 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=青天白日旗飞扬—献给国民革命军—英勇勋章(後段都是真实的抗战照片)';
; L2 Q# w: w5 u$ S' C在fmt_map后面两个&之间的文字,得到ID2
& u1 a- d& v) V& g. S3 S* V8 Nt=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK. k+ u5 }9 t4 R# J: r
; \# f9 O- \. r0 ~
和前面的ID1一起,组成链接
) Z! @9 T9 v [/ ~1 i0 Shttp ://www.youtube.com/get_video?video_id=ID1&ID2,即是" U4 s( q1 r; D" X, [
http ://www.youtube.com/get_video?video_id=aPXlIjgaHQ4&t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK, p6 w8 ]6 x7 Q
(现在这个链接无效)
% h4 F& P7 G3 h3 N+ |7 y J把这个链接拷贝到浏览器地址栏,回车后是下载而不是播放这个视频,格式:.flv+ Q# D% _' c0 b1 G, _7 C
每次浏览器打开同一视频后得到的ID2不一样,有有效时间限制# I5 m/ R. A. B" f
H& B0 R$ u) h3 g m1 v/ H- N
youtube总是改动ID2位置,但基本原理一致( {& g O7 ~6 v/ u9 B
% U/ G/ _+ ^$ B6 p0 W/ c% H' Nlinux的下载script:youtube.sh
) I- H2 T; @. |" h5 x5 J5 B I#!/bin/sh3 d+ b/ ~+ |# T1 ~' z
3 {0 V U. |0 g* e' k6 ?/ A6 ]
if [ "$#" != "1" ]; then
- h5 {/ |& s9 K6 u) e8 W exit 64: v. Y2 M9 ]) W% E; u
fi! X! ^: Y$ T3 \8 w" ]2 S: s
2 @" S. a# Z, ]% c5 N1 i% kVID=$(echo "$1"|sed "s/.*v=\([^&]*\).*/\1/"). A2 R3 X. A: h4 m2 y1 H$ G
URL1="http://www.youtube.com/watch?v=$VID"
% I; F4 |2 v/ I; G3 rPARAM="$(wget -q -O - "$URL1"|grep watch_fullscreen|cut -d '&' -f 8)"
- S8 D# Y9 A0 [$ YURL2="http://www.youtube.com/get_video?video_id=$VID&$PARAM"
; s1 U4 m- i: @/ q; r3 L- C( wexec wget -O "$VID.flv" "$URL2"
7 Z3 f! W# m5 f# b) ~用法:/ \5 O Y, E# k
! C/ g7 @- d1 b0 r./youtube.sh http ://www.youtube.com/watch?v=aPXlIjgaHQ4[/url]
2 w# {" F# l0 J9 L得到 aPXlIjgaHQ4.flv,用ffmpeg可以转换成mp3 mp4 mpg等.
8 s4 r( g8 F- `; Q
2 L% S5 A4 Q$ b @[ 本帖最后由 夜明砂 于 2008-10-2 12:25 编辑 ] |
|