埃德蒙顿华人社区-Edmonton China

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

youtube的下载原理

[复制链接]
鲜花(3) 鸡蛋(0)
发表于 2008-10-2 11:14 | 显示全部楼层 |阅读模式
老杨团队,追求完美;客户至上,服务到位!
以英勇勋章为例
6 W) Q4 }' @" Q7 Zhttp://www.youtube.com/watch?v=aPXlIjgaHQ41 x1 {4 T. v- z5 r$ D
aPXlIjgaHQ4为ID1# F% w. W% e9 c  e1 K9 Q5 ~

9 C8 `7 l) F5 p: H用浏览器打开链接时,查看page source,搜索 watch_fullscreen,有一句如下1 F# g: _$ g' q) Z+ i; d8 F
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=青天白日旗飞扬—献给国民革命军—英勇勋章(後段都是真实的抗战照片)';; ?8 R0 b' K. [  z4 e; M: C: ]8 d
在fmt_map后面两个&之间的文字,得到ID27 L& y' G8 L; m, B; |
t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK5 p/ B5 J0 v/ v5 Y4 t$ F

+ ~7 y. b' |1 P- p6 J* l7 o和前面的ID1一起,组成链接
$ Q* L8 T% P. g. ~) q3 q$ w0 [http ://www.youtube.com/get_video?video_id=ID1&ID2,即是
$ A9 {2 j& L- v' b  h4 }- Hhttp ://www.youtube.com/get_video?video_id=aPXlIjgaHQ4&t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK
9 J9 Z8 U6 [# i, X) {8 W$ x(现在这个链接无效)% q! `( I5 _4 T$ Q- n# \
把这个链接拷贝到浏览器地址栏,回车后是下载而不是播放这个视频,格式:.flv
' M' H/ ], G0 d' s9 ~. ]4 i3 g每次浏览器打开同一视频后得到的ID2不一样,有有效时间限制
& s" A( X; N- Y2 T; P" P; \) f# p5 G3 k' Y- a8 W
youtube总是改动ID2位置,但基本原理一致6 K% L6 e+ |0 |8 h' s! v5 Y
* m( j7 W/ H6 c  u$ e
linux的下载script:youtube.sh
9 ~9 o2 {' z( M) k
#!/bin/sh
/ C5 Z+ ^# K  L8 s3 w0 k/ s' U% b9 @0 _  L
if [ "$#" != "1" ]; then
+ s4 q9 Q! |: Z4 J" o! R$ t1 @   exit 64
8 {7 j0 h5 B+ x, k! r$ [3 Zfi) H/ K8 d8 F; ]" c. {" Z& m' v- n/ f

7 \; C! L, E7 x: c  KVID=$(echo "$1"|sed "s/.*v=\([^&]*\).*/\1/")$ z7 U0 s9 X7 S6 q4 U5 x% d
URL1="http://www.youtube.com/watch?v=$VID", X: n+ T) D/ T
PARAM="$(wget -q -O - "$URL1"|grep watch_fullscreen|cut -d '&' -f 8)"
7 r$ k9 _8 n9 g) `! A7 [  |URL2="http://www.youtube.com/get_video?video_id=$VID&$PARAM"' `: \" Y8 Q- d, I# {: s
exec wget -O "$VID.flv" "$URL2"

: z5 U! a9 m! A8 I9 U5 W% ~) t用法:
9 O3 q: n  ~: _' S( @2 T
7 A8 t5 n4 @3 {" E0 ~, ^' X./youtube.sh http ://www.youtube.com/watch?v=aPXlIjgaHQ4[/url]
  i7 @) p9 D6 s$ b( X( W" Z0 W得到 aPXlIjgaHQ4.flv,用ffmpeg可以转换成mp3 mp4 mpg等.
" i9 ]3 N9 @4 f8 w2 s4 E2 Z
. l! ~6 P. p6 L" P* [2 p[ 本帖最后由 夜明砂 于 2008-10-2 12:25 编辑 ]
鲜花(0) 鸡蛋(0)
发表于 2008-10-2 12:53 | 显示全部楼层
有人专门搞了个网站,处理youtube下载问题,很傻瓜、很好用。7 _% n# g/ u2 d
http://www.techcrunch.com/get-youtube-movie/
鲜花(0) 鸡蛋(0)
发表于 2008-10-17 10:59 | 显示全部楼层
不错,不过用Maxthon的话,不用那么麻烦就行了,而且这个原理只适用于YouTube,你到break.com就不能用,所以还是用下载工具王道。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT-7, 2026-4-9 06:15 , Processed in 0.365530 second(s), 14 queries , Gzip On, APC On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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