埃德蒙顿华人社区-Edmonton China

 找回密码
 注册
查看: 2739|回复: 2

youtube的下载原理

[复制链接]
鲜花(3) 鸡蛋(0)
发表于 2008-10-2 11:14 | 显示全部楼层 |阅读模式
老杨团队,追求完美;客户至上,服务到位!
以英勇勋章为例$ E* M, o1 P; x
http://www.youtube.com/watch?v=aPXlIjgaHQ4
# ?- E' E( f/ K  t: Y; xaPXlIjgaHQ4为ID1
# v/ S4 e. T" Z  l8 m; f  J$ j
! L. ~* ]$ F& Y5 M% Q用浏览器打开链接时,查看page source,搜索 watch_fullscreen,有一句如下3 M$ O3 E" y, n) ^* 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=青天白日旗飞扬—献给国民革命军—英勇勋章(後段都是真实的抗战照片)';
. K! ?6 e" ^  u. A$ X在fmt_map后面两个&之间的文字,得到ID28 w" X$ ~. Q  s$ V
t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK  F( l* J2 z9 e, t9 p  |
1 `! l5 v8 C! g  N9 K/ Z: A+ y
和前面的ID1一起,组成链接
' [' `* w9 `6 t% B2 O7 w+ rhttp ://www.youtube.com/get_video?video_id=ID1&ID2,即是% }+ ^! e$ b8 ]* n3 t
http ://www.youtube.com/get_video?video_id=aPXlIjgaHQ4&t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK
4 x3 O! g% Z3 `+ K5 u(现在这个链接无效)0 v! ]2 O0 y7 y+ u
把这个链接拷贝到浏览器地址栏,回车后是下载而不是播放这个视频,格式:.flv
7 ?/ _0 q: x0 c8 c4 v/ Q  k) ?4 ?& W每次浏览器打开同一视频后得到的ID2不一样,有有效时间限制
/ O  W& V4 {& M' a4 l9 E5 h8 f
+ c* C1 ^# n# C. ]youtube总是改动ID2位置,但基本原理一致5 m" U" T( d3 G
9 l" v$ m' [1 S: i5 k- t6 l, _5 Y
linux的下载script:youtube.sh
0 x  s) [! M& J( E- [  N" M5 s
#!/bin/sh
/ a) c! T. ?8 ?( y8 ]
9 |5 c+ b' @1 x' C; y$ Q/ mif [ "$#" != "1" ]; then
# B  M$ u# D+ [* N# V8 O   exit 64
5 s) T/ t3 |( e5 \/ Zfi" O; t3 ]( B% n
' c& Q% }) g) X
VID=$(echo "$1"|sed "s/.*v=\([^&]*\).*/\1/")" c( e+ X6 I# X% B6 K4 S
URL1="http://www.youtube.com/watch?v=$VID"$ y# X0 I7 Z( [- e$ k4 K' O% ]
PARAM="$(wget -q -O - "$URL1"|grep watch_fullscreen|cut -d '&' -f 8)"+ s8 h# r# ^6 G1 i; x; E* m
URL2="http://www.youtube.com/get_video?video_id=$VID&$PARAM"
0 F# ~( L6 F. k) ~exec wget -O "$VID.flv" "$URL2"

+ z2 g* X; }9 o0 C用法:
* G  G1 U+ y! ]- N2 P, Y; ]5 n7 h
./youtube.sh http ://www.youtube.com/watch?v=aPXlIjgaHQ4[/url]- X7 C7 u8 o' k) N$ l/ r- }0 R
得到 aPXlIjgaHQ4.flv,用ffmpeg可以转换成mp3 mp4 mpg等.
+ K4 W9 g* K9 \( R! Q3 c9 h
$ S8 U/ ]' j; U% J* s6 H[ 本帖最后由 夜明砂 于 2008-10-2 12:25 编辑 ]
鲜花(0) 鸡蛋(0)
发表于 2008-10-2 12:53 | 显示全部楼层
有人专门搞了个网站,处理youtube下载问题,很傻瓜、很好用。
2 ~8 |/ L+ H: I8 A9 `0 \http://www.techcrunch.com/get-youtube-movie/
鲜花(0) 鸡蛋(0)
发表于 2008-10-17 10:59 | 显示全部楼层
不错,不过用Maxthon的话,不用那么麻烦就行了,而且这个原理只适用于YouTube,你到break.com就不能用,所以还是用下载工具王道。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系我们|小黑屋|手机版|Archiver|埃德蒙顿中文网

GMT-7, 2026-6-25 17:13 , Processed in 0.114439 second(s), 15 queries , Gzip On, APC On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表