埃德蒙顿华人社区-Edmonton China

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

youtube的下载原理

[复制链接]
鲜花(3) 鸡蛋(0)
发表于 2008-10-2 11:14 | 显示全部楼层 |阅读模式
老杨团队,追求完美;客户至上,服务到位!
以英勇勋章为例9 r1 h8 t/ b6 i
http://www.youtube.com/watch?v=aPXlIjgaHQ4
7 e& _+ T$ T, p" n/ \, JaPXlIjgaHQ4为ID1
, k, ?) R# g& ]: @0 t% F# S3 Q! \* A& K
用浏览器打开链接时,查看page source,搜索 watch_fullscreen,有一句如下* m8 q5 e6 k9 k$ `* E$ ]
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=青天白日旗飞扬—献给国民革命军—英勇勋章(後段都是真实的抗战照片)';  P' ]( P" j( Z6 P
在fmt_map后面两个&之间的文字,得到ID2
& O  y/ ^9 N6 z  Et=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK: c# z$ S8 ^* T3 K: h

* g* K9 V0 ]' U0 F和前面的ID1一起,组成链接" O# U8 m7 @$ {
http ://www.youtube.com/get_video?video_id=ID1&ID2,即是
+ a& p# J4 ^- H1 W+ k+ }/ I- Rhttp ://www.youtube.com/get_video?video_id=aPXlIjgaHQ4&t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK
6 f  O: Z! `0 `6 f! r! Q(现在这个链接无效)
3 ]9 ^4 A* R4 l% H; ?1 `& Y# a4 q把这个链接拷贝到浏览器地址栏,回车后是下载而不是播放这个视频,格式:.flv; n0 c" j! n9 }0 [/ X0 X
每次浏览器打开同一视频后得到的ID2不一样,有有效时间限制1 [& l& X* R$ ~2 B4 `" c  A
4 [; Q2 l6 d) v$ \1 O; F- N
youtube总是改动ID2位置,但基本原理一致
& g+ p3 f  I& [" x3 E. `4 T9 X
9 p3 S% b- s1 ~linux的下载script:youtube.sh. ?4 m! E, J% z/ x2 u& I
#!/bin/sh
2 d* h) _5 }% }# p
0 U/ X' O- t% _4 c; N; h  D3 k0 Pif [ "$#" != "1" ]; then% N: n0 n5 n+ b+ H- Z
   exit 64
# l' j+ z, F& b  [" Y+ d  [fi  o# v% ?9 j' _2 ]

% b5 ~' q, n8 p2 Y1 ^- OVID=$(echo "$1"|sed "s/.*v=\([^&]*\).*/\1/")
& B+ [& N. r/ W8 N; gURL1="http://www.youtube.com/watch?v=$VID"
$ f7 a  V4 h' oPARAM="$(wget -q -O - "$URL1"|grep watch_fullscreen|cut -d '&' -f 8)"
) |. V# f2 ?: Q+ d" M' aURL2="http://www.youtube.com/get_video?video_id=$VID&$PARAM"" ^' F9 D1 l, F+ C- W0 V
exec wget -O "$VID.flv" "$URL2"
4 M7 V" c! l7 Q& L9 a& q4 x3 W. a
用法:
4 g0 Q2 Q+ o& W2 e/ j- Y: H; U+ e# [$ t- ^" P- l" K( P6 p) V: y
./youtube.sh http ://www.youtube.com/watch?v=aPXlIjgaHQ4[/url]0 v3 |% m: g" F& E$ ?  m
得到 aPXlIjgaHQ4.flv,用ffmpeg可以转换成mp3 mp4 mpg等.
' C) ?, S) B% h3 R* n" e& d/ l' w7 B! x8 _' P7 c
[ 本帖最后由 夜明砂 于 2008-10-2 12:25 编辑 ]
鲜花(0) 鸡蛋(0)
发表于 2008-10-2 12:53 | 显示全部楼层
有人专门搞了个网站,处理youtube下载问题,很傻瓜、很好用。& X4 `4 h& `  g: c- e5 Q
http://www.techcrunch.com/get-youtube-movie/
鲜花(0) 鸡蛋(0)
发表于 2008-10-17 10:59 | 显示全部楼层
不错,不过用Maxthon的话,不用那么麻烦就行了,而且这个原理只适用于YouTube,你到break.com就不能用,所以还是用下载工具王道。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT-7, 2025-11-9 18:46 , Processed in 0.070085 second(s), 15 queries , Gzip On, APC On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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