埃德蒙顿华人社区-Edmonton China

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

youtube的下载原理

[复制链接]
鲜花(3) 鸡蛋(0)
发表于 2008-10-2 11:14 | 显示全部楼层 |阅读模式
老杨团队,追求完美;客户至上,服务到位!
以英勇勋章为例' F2 l7 Q6 l% U+ d" c
http://www.youtube.com/watch?v=aPXlIjgaHQ4
9 B; s" T4 T8 J, vaPXlIjgaHQ4为ID1: E* s& V; \+ q! X
8 i- `+ X8 ?  j' J
用浏览器打开链接时,查看page source,搜索 watch_fullscreen,有一句如下2 D- s9 g2 q4 ]
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 w2 \+ K4 o% I! P5 p9 m6 B
在fmt_map后面两个&之间的文字,得到ID2& P6 l/ X' A& d5 h) d: W
t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK8 t+ q  i& `* A( \6 i& U$ F: f
1 b2 N( P4 c& c% f3 o5 Z) `
和前面的ID1一起,组成链接* y3 i. {) d& g8 W
http ://www.youtube.com/get_video?video_id=ID1&ID2,即是  A% a& _. g, J! S: D: ^5 e% U
http ://www.youtube.com/get_video?video_id=aPXlIjgaHQ4&t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK
: y' i' |4 I" f; N3 U7 W(现在这个链接无效)
$ B- f. Y0 d# E% n4 Y% ?% m把这个链接拷贝到浏览器地址栏,回车后是下载而不是播放这个视频,格式:.flv) G( ~) t  j% H* P1 r% O  A+ e5 ?: L
每次浏览器打开同一视频后得到的ID2不一样,有有效时间限制1 l* e/ W+ B( c$ e- X

( w2 o; ]5 x- J: H& eyoutube总是改动ID2位置,但基本原理一致
+ t. Y! e& a0 ?3 }; h6 t3 J% v+ d: m4 W6 |
linux的下载script:youtube.sh: j1 ?! u, l  \) S' N* H
#!/bin/sh
# Y! E( K1 m9 b4 O3 e
! n* t/ ?. @7 j; M% z# F; M" ]if [ "$#" != "1" ]; then
( S' ~$ q4 t" A- f   exit 64
  F2 K* X7 Z2 }fi
( J: a  N2 [4 l: m+ v5 s& ?$ Q. h
VID=$(echo "$1"|sed "s/.*v=\([^&]*\).*/\1/")$ N' V) U. A% R7 ~. i% c
URL1="http://www.youtube.com/watch?v=$VID"
/ e+ u" K8 r9 U' V$ _0 YPARAM="$(wget -q -O - "$URL1"|grep watch_fullscreen|cut -d '&' -f 8)"
1 n; l; M: i; I! D& G  T  OURL2="http://www.youtube.com/get_video?video_id=$VID&$PARAM"; B. ~. ^+ @1 b* y
exec wget -O "$VID.flv" "$URL2"

/ a, G  E+ [$ O7 l7 H用法:8 c% V9 n1 N* g2 A+ g
" M& k  k# _1 d- Y$ ~' V
./youtube.sh http ://www.youtube.com/watch?v=aPXlIjgaHQ4[/url]( b6 B8 I8 a: M9 d* Y! e# c
得到 aPXlIjgaHQ4.flv,用ffmpeg可以转换成mp3 mp4 mpg等.4 Y/ l5 ]$ q* C; U9 f

% `  P; \5 I5 `3 `3 n[ 本帖最后由 夜明砂 于 2008-10-2 12:25 编辑 ]
鲜花(0) 鸡蛋(0)
发表于 2008-10-2 12:53 | 显示全部楼层
有人专门搞了个网站,处理youtube下载问题,很傻瓜、很好用。3 ]: J" t0 c% f/ D% Z+ ^. c1 b
http://www.techcrunch.com/get-youtube-movie/
鲜花(0) 鸡蛋(0)
发表于 2008-10-17 10:59 | 显示全部楼层
不错,不过用Maxthon的话,不用那么麻烦就行了,而且这个原理只适用于YouTube,你到break.com就不能用,所以还是用下载工具王道。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT-7, 2025-11-9 08:16 , Processed in 0.181183 second(s), 15 queries , Gzip On, APC On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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