埃德蒙顿华人社区-Edmonton China

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

youtube的下载原理

[复制链接]
鲜花(3) 鸡蛋(0)
发表于 2008-10-2 11:14 | 显示全部楼层 |阅读模式
老杨团队,追求完美;客户至上,服务到位!
以英勇勋章为例
9 X) Z+ J" ^7 Hhttp://www.youtube.com/watch?v=aPXlIjgaHQ4
  `, A- @9 ?; y0 E3 oaPXlIjgaHQ4为ID1' n: ]' w+ J8 Q, {+ A' |% R* T$ \

& ^* n4 @) [0 |5 R用浏览器打开链接时,查看page source,搜索 watch_fullscreen,有一句如下
; U, g3 s, H4 H7 `8 X( N* E$ Qvar 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=青天白日旗飞扬—献给国民革命军—英勇勋章(後段都是真实的抗战照片)';
7 u, {! J) @$ J# k4 [- S在fmt_map后面两个&之间的文字,得到ID2( x. w" ^1 p! @0 V( Q4 g1 A
t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK& P9 Z1 m, e9 h  \) b

5 b( M( l0 K* D8 V. Q2 D  D和前面的ID1一起,组成链接
! B  q* k. |; Y* C& ^. [http ://www.youtube.com/get_video?video_id=ID1&ID2,即是
. f- G0 ^: }5 }2 G# Phttp ://www.youtube.com/get_video?video_id=aPXlIjgaHQ4&t=OEgsToPDskLgGT5CRco2E2Rm4jt5pcLK
5 s" K- s: y( ?; Q/ u! T" z(现在这个链接无效)
2 ]& w# W0 z  r' F( o2 h把这个链接拷贝到浏览器地址栏,回车后是下载而不是播放这个视频,格式:.flv
3 m, ?, y4 D. i8 K6 e每次浏览器打开同一视频后得到的ID2不一样,有有效时间限制0 Y9 I) w( m7 Q! X1 }3 a+ f* J0 g

2 R5 ^/ s7 g7 t; B2 u) H2 gyoutube总是改动ID2位置,但基本原理一致
8 m6 B$ G7 g6 K; w* u6 j% U& W, h, E4 X+ T# k1 G/ I! r, i) u
linux的下载script:youtube.sh
4 V1 S/ W- C! O' P! F, ^0 J
#!/bin/sh
: h* u. b) E' w) W$ U% }; u
3 Z1 t$ |: E( m" c' xif [ "$#" != "1" ]; then& Y5 z1 |/ J& }* h- o4 d! }: _
   exit 64
2 F0 r# h3 s' E0 Bfi) I0 n1 d* ^+ x8 Q

0 ^- M+ O4 a& T/ w1 f; xVID=$(echo "$1"|sed "s/.*v=\([^&]*\).*/\1/")" D8 L9 v- F8 m
URL1="http://www.youtube.com/watch?v=$VID"$ r5 Q5 I: B! P9 _8 r
PARAM="$(wget -q -O - "$URL1"|grep watch_fullscreen|cut -d '&' -f 8)"
( b' A1 V  ]* S; l3 t& wURL2="http://www.youtube.com/get_video?video_id=$VID&$PARAM"; T! y% _2 {- R+ d* c) s
exec wget -O "$VID.flv" "$URL2"
# i3 `+ i9 S2 T
用法:
* V7 V" i$ d' P  g9 W
6 S; f5 x  ^" Z' }4 m6 c( P./youtube.sh http ://www.youtube.com/watch?v=aPXlIjgaHQ4[/url]
1 j- o5 i0 j! N得到 aPXlIjgaHQ4.flv,用ffmpeg可以转换成mp3 mp4 mpg等.; `- ?9 S) v/ S* ~/ Y

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

本版积分规则

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

GMT-7, 2026-6-11 20:17 , Processed in 0.125537 second(s), 15 queries , Gzip On, APC On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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