埃德蒙顿华人社区-Edmonton China

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

youtube的下载原理

[复制链接]
鲜花(3) 鸡蛋(0)
发表于 2008-10-2 11:14 | 显示全部楼层 |阅读模式
老杨团队,追求完美;客户至上,服务到位!
以英勇勋章为例
: l, a9 c. k/ xhttp://www.youtube.com/watch?v=aPXlIjgaHQ4
& W/ S  u5 Z/ ?# i. GaPXlIjgaHQ4为ID14 ]. d5 X" h' j( u

1 d/ J& f* `, q" X8 X; z用浏览器打开链接时,查看page source,搜索 watch_fullscreen,有一句如下
- K2 _1 i9 A; s: j, `; ?/ {( {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=青天白日旗飞扬—献给国民革命军—英勇勋章(後段都是真实的抗战照片)';0 `, Y- Q6 s  ?& W- o
在fmt_map后面两个&之间的文字,得到ID2
8 ?4 U: N' b1 P; V9 D/ ft=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK
* P& |- v; G% l
: V# |6 s4 v4 n# u& U( h) W和前面的ID1一起,组成链接9 N( c) ]6 @6 p3 i  i5 M8 m' k8 ]0 o( d
http ://www.youtube.com/get_video?video_id=ID1&ID2,即是
# t0 c% f2 e3 m9 ^3 R- {- ehttp ://www.youtube.com/get_video?video_id=aPXlIjgaHQ4&t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK- }( a; z  c* r: U- S& h. c5 ?
(现在这个链接无效)
; h. o8 b7 k5 L把这个链接拷贝到浏览器地址栏,回车后是下载而不是播放这个视频,格式:.flv
2 @2 ?0 J; Q  `/ C每次浏览器打开同一视频后得到的ID2不一样,有有效时间限制/ c: B: O( l* ~

$ N/ s; q* y9 h8 m. _' kyoutube总是改动ID2位置,但基本原理一致
! a4 e% h2 w& A1 q/ O; F5 |$ p( M( A/ T7 |& _
linux的下载script:youtube.sh
; ~3 ?2 V4 p! b0 F
#!/bin/sh) a9 m6 A7 E# K( Y0 J" Z
2 ]/ H4 q0 w& F% p/ E
if [ "$#" != "1" ]; then1 T2 H: f8 _7 Z, m  `* `
   exit 64
& _$ u8 }2 }, T# k8 w6 S6 A# d+ ufi  Z, |# U7 D8 ^/ O! o

+ t9 S/ E: {. \" e1 U6 O9 `: T2 v/ QVID=$(echo "$1"|sed "s/.*v=\([^&]*\).*/\1/")
# z( J% v+ N2 D0 z( A$ YURL1="http://www.youtube.com/watch?v=$VID"4 A( |+ a+ `) `
PARAM="$(wget -q -O - "$URL1"|grep watch_fullscreen|cut -d '&' -f 8)"" ~, r7 Z  {7 `# L$ q9 f0 j$ ?
URL2="http://www.youtube.com/get_video?video_id=$VID&$PARAM"
& F$ p$ s: a+ G3 B0 Rexec wget -O "$VID.flv" "$URL2"

" s  b3 y% I3 e用法:
5 |" c: W" Y& ?, @0 M# {, X, c4 M4 d
./youtube.sh http ://www.youtube.com/watch?v=aPXlIjgaHQ4[/url]! |; ]! J. Z) Z& M
得到 aPXlIjgaHQ4.flv,用ffmpeg可以转换成mp3 mp4 mpg等.
% j0 H/ l3 o+ r0 K: H" L
7 K4 I# a/ G7 u1 ~[ 本帖最后由 夜明砂 于 2008-10-2 12:25 编辑 ]
鲜花(0) 鸡蛋(0)
发表于 2008-10-2 12:53 | 显示全部楼层
有人专门搞了个网站,处理youtube下载问题,很傻瓜、很好用。3 L% f2 U# R5 @6 B; E5 d+ M
http://www.techcrunch.com/get-youtube-movie/
鲜花(0) 鸡蛋(0)
发表于 2008-10-17 10:59 | 显示全部楼层
不错,不过用Maxthon的话,不用那么麻烦就行了,而且这个原理只适用于YouTube,你到break.com就不能用,所以还是用下载工具王道。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT-7, 2026-4-10 06:26 , Processed in 0.166568 second(s), 14 queries , Gzip On, APC On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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