埃德蒙顿华人社区-Edmonton China

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

youtube的下载原理

[复制链接]
鲜花(3) 鸡蛋(0)
发表于 2008-10-2 11:14 | 显示全部楼层 |阅读模式
老杨团队,追求完美;客户至上,服务到位!
以英勇勋章为例
, s& C5 M2 r5 b9 a2 H- K( u9 M, W1 Yhttp://www.youtube.com/watch?v=aPXlIjgaHQ4: x0 t$ ^- [5 J. A1 |
aPXlIjgaHQ4为ID1; {, H5 Q  {, l' v5 `# Z
, u( s3 X& R; d+ ?, Z3 P# u4 F, N
用浏览器打开链接时,查看page source,搜索 watch_fullscreen,有一句如下" A+ u) A9 {+ ]% x! K5 m
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=青天白日旗飞扬—献给国民革命军—英勇勋章(後段都是真实的抗战照片)';% `2 t; b8 e, d) Q
在fmt_map后面两个&之间的文字,得到ID2
0 |- O' h% ^9 p0 U  h! r+ s2 u+ T. vt=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK
9 A: Z! ^. B% z1 Z- d4 M! Z
  ^6 r, i$ X# z! v) b  m和前面的ID1一起,组成链接
8 q& w' P( ]1 _6 u. x( @) T  Zhttp ://www.youtube.com/get_video?video_id=ID1&ID2,即是- ?% j4 L8 f! h; b' ~1 h
http ://www.youtube.com/get_video?video_id=aPXlIjgaHQ4&t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK8 I# }& d3 N4 G0 |
(现在这个链接无效)
4 O, Q: c& w0 d; P4 u把这个链接拷贝到浏览器地址栏,回车后是下载而不是播放这个视频,格式:.flv, i0 @& d- `* k
每次浏览器打开同一视频后得到的ID2不一样,有有效时间限制3 \# m1 |9 E3 ~$ U0 U- i
* X: U1 d$ N/ e# c
youtube总是改动ID2位置,但基本原理一致
) u% ^- S. Z1 Q: q9 V, T/ G
5 I" q9 E5 r% [5 ]3 j% z$ O6 Y* @5 |0 ^linux的下载script:youtube.sh5 v4 z; o! c9 O' l4 R1 j/ F- R
#!/bin/sh5 g/ `. P, V) m5 ?* n
; g% o( B" {$ S! b+ f4 b4 l
if [ "$#" != "1" ]; then% j" A/ e$ s( A+ e
   exit 64
) P1 `8 |+ E0 x) o2 Dfi1 m5 \+ P$ _$ n1 M. P3 v
+ R0 v3 c: Y0 I, z
VID=$(echo "$1"|sed "s/.*v=\([^&]*\).*/\1/")
, R% Q! n) H7 T3 o3 bURL1="http://www.youtube.com/watch?v=$VID"
" \; _5 G/ A1 a# [* \3 BPARAM="$(wget -q -O - "$URL1"|grep watch_fullscreen|cut -d '&' -f 8)"# f: A! v" E  U& R/ W
URL2="http://www.youtube.com/get_video?video_id=$VID&$PARAM"
. \+ p" F* Q% g' Z/ ~( {exec wget -O "$VID.flv" "$URL2"

& X' O0 h* `' t用法:
! K' x& \9 ?3 v6 p9 s( H% Z* Q) K
! O* d3 R' u4 J' j/ ]9 x; \./youtube.sh http ://www.youtube.com/watch?v=aPXlIjgaHQ4[/url]4 a* s% d! x) O2 x# J; L/ C
得到 aPXlIjgaHQ4.flv,用ffmpeg可以转换成mp3 mp4 mpg等.0 h4 ~% q) I( m' N

+ U9 k) X* e' ]5 T8 K& M[ 本帖最后由 夜明砂 于 2008-10-2 12:25 编辑 ]
鲜花(0) 鸡蛋(0)
发表于 2008-10-2 12:53 | 显示全部楼层
有人专门搞了个网站,处理youtube下载问题,很傻瓜、很好用。: A! M# x: o* d9 {
http://www.techcrunch.com/get-youtube-movie/
鲜花(0) 鸡蛋(0)
发表于 2008-10-17 10:59 | 显示全部楼层
不错,不过用Maxthon的话,不用那么麻烦就行了,而且这个原理只适用于YouTube,你到break.com就不能用,所以还是用下载工具王道。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT-7, 2025-12-19 17:19 , Processed in 0.084082 second(s), 15 queries , Gzip On, APC On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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