埃德蒙顿华人社区-Edmonton China

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

youtube的下载原理

[复制链接]
鲜花(3) 鸡蛋(0)
发表于 2008-10-2 11:14 | 显示全部楼层 |阅读模式
老杨团队,追求完美;客户至上,服务到位!
以英勇勋章为例( `, {% c4 a6 Y1 g1 H
http://www.youtube.com/watch?v=aPXlIjgaHQ4
6 I" v5 n$ V  G4 F  taPXlIjgaHQ4为ID1  y5 A0 X0 @' s1 a) j" k  {
% g9 T  R2 i/ n$ p% n5 S( @
用浏览器打开链接时,查看page source,搜索 watch_fullscreen,有一句如下  E, q/ I  j! |) q
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=青天白日旗飞扬—献给国民革命军—英勇勋章(後段都是真实的抗战照片)';1 _1 y* V# {2 P& D2 c% G
在fmt_map后面两个&之间的文字,得到ID2( i9 C6 J# m& D0 d. R' O% m
t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK  v8 D, h" N+ g1 v/ g2 s$ _1 _/ P
# [! ~1 ~; [1 ^8 v2 M
和前面的ID1一起,组成链接  M% S. j8 ~6 c: {- T! r  ~0 o
http ://www.youtube.com/get_video?video_id=ID1&ID2,即是
3 J1 u) }' K, T# S: Lhttp ://www.youtube.com/get_video?video_id=aPXlIjgaHQ4&t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK& ~" |) O  y# Z/ J  {
(现在这个链接无效)2 r- p: E$ L* `+ Q& @, u- R2 V/ D
把这个链接拷贝到浏览器地址栏,回车后是下载而不是播放这个视频,格式:.flv
5 x4 d& c9 N: `. n9 w' \2 M每次浏览器打开同一视频后得到的ID2不一样,有有效时间限制6 v* `: L* V+ y, J6 R
) h/ u) K% [. i
youtube总是改动ID2位置,但基本原理一致
! P- [' u& L% Y
, R; W1 u, k4 s, i. p: ~( plinux的下载script:youtube.sh2 Z& h( ^/ r6 ]7 u8 K( V) N' |& D
#!/bin/sh' h% A8 I, N9 r
/ Q/ F9 e3 d: y8 x2 F
if [ "$#" != "1" ]; then  `" Q5 J" _& [
   exit 64
6 v8 g6 I1 {. rfi" H! u7 W, L& H4 F
( D' Q, b2 i$ M, X8 c: v* y; D% W) A
VID=$(echo "$1"|sed "s/.*v=\([^&]*\).*/\1/")# |/ o. e5 J* [% e: B' q# ]
URL1="http://www.youtube.com/watch?v=$VID"" N; H7 S. p! y$ E" \4 n$ ^
PARAM="$(wget -q -O - "$URL1"|grep watch_fullscreen|cut -d '&' -f 8)"6 Z& N/ S7 Q7 E2 C2 f9 X
URL2="http://www.youtube.com/get_video?video_id=$VID&$PARAM"
2 j; S3 n5 r/ f# W3 Oexec wget -O "$VID.flv" "$URL2"
1 @- x  V: {4 x8 l% X1 M6 u
用法:+ i0 u4 m% r3 K' x. `+ f

: |+ Q% M9 n. E! F& v. s7 o% D./youtube.sh http ://www.youtube.com/watch?v=aPXlIjgaHQ4[/url]
$ p$ Y5 {  z( V( N/ h得到 aPXlIjgaHQ4.flv,用ffmpeg可以转换成mp3 mp4 mpg等.
$ l  Z: @4 A1 ^6 |
+ B% ]& [& V, y3 I6 \8 E[ 本帖最后由 夜明砂 于 2008-10-2 12:25 编辑 ]
鲜花(0) 鸡蛋(0)
发表于 2008-10-2 12:53 | 显示全部楼层
有人专门搞了个网站,处理youtube下载问题,很傻瓜、很好用。) p( f% l% p5 P5 a* D
http://www.techcrunch.com/get-youtube-movie/
鲜花(0) 鸡蛋(0)
发表于 2008-10-17 10:59 | 显示全部楼层
不错,不过用Maxthon的话,不用那么麻烦就行了,而且这个原理只适用于YouTube,你到break.com就不能用,所以还是用下载工具王道。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT-7, 2025-6-8 11:17 , Processed in 0.144331 second(s), 14 queries , Gzip On, APC On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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