3

YouTube から mp4 ファイルをダウンロードするスクリプトがあります。http://youtube.com/get_video?video_id= *VIDEO_ID*&&t=*THE_TOKEN*=&fmt=18&asv=2の形式のリンクを生成することですが、もう機能しません (今日気づいた)。どう思いますか?

4

4 に答える 4

12

get_video を使用してビデオを取得しようとする代わりに、代わりに fmt_url_map (format-url マップ) を解析してみてください。

fmt_url_map は、トークンを見つけたのと同じ場所 (YouTube フラッシュ ビデオ プレーヤーの flashvars や YouTube ページ内など) で見つけることができるはずです。見つからない場合は、http: //www.youtube.com/get_video_info?video_id= VIDEO_IDにリクエストを送信してください。非常に長い結果が得られます。name=value&name=value&...この結果の中に "fmt_url_map" を検索 (検索"&fmt_url_map=" で始まり "&" で終わる文字列の結果)。

この値を取得すると (URL デコードが必要になる場合があります)、次のようになります (改行なし)。

22|http://blah.youtube.com/videoplayback?blah,
35|http://blah.youtube.com/videoplayback?blah,
...

各コンマ区切りのエントリは、fmt 値 (例では 22 または 35) で始まり、その後にパイプ文字が続き、その後にその形式でビデオをダウンロードするために使用できる URL が続きます。(この URL はクライアント固有であるため、特定のクライアントの URL は、YouTube が IP をチェックしているため、別のクライアントでは機能しない可能性があります。また、URL はしばらくすると期限切れになります。)

さまざまな fmt 値のリストについては、http: //en.wikipedia.org/wiki/YouTube#Quality_and_formatsを参照し、「YouTube メディア エンコーディング オプションの比較」を参照してください。注: すべての動画ですべての形式が利用できるわけではありません。

非推奨: もう機能しません!

于 2010-12-12T02:36:11.123 に答える
2

サーバーにダウンロードする場合は、引き続き機能するyoutube-dlを使用できます。

于 2010-12-10T02:00:57.037 に答える
0

彼らは fmt オプションを削除したようです。http://en.wikipedia.org/wiki/YouTube#Quality_and_codecsを参照してください。

于 2010-12-10T04:56:57.597 に答える