2013-02-21 302 views
1

我在尋找Youtube Downloader應用程序並下載視頻首先,我需要獲取正在運行的視頻的網址。如何獲取我播放的視頻的網址。如何獲取YouTube視頻網址

但是當我播放任何視頻到模擬器,它會自動給我url..which的一些信息是

2013-02-21 12:25:26.518 MyTube[682:14003] [MPAVController] Autoplay: Enabling autoplay 
2013-02-21 12:25:26.518 MyTube[682:14003] [MPAVController] Autoplay: Skipping autoplay, disabled (for current item: 0, on player: 1) 
2013-02-21 12:25:26.518 MyTube[682:14003] setting movie path: http://r19---sn-a5m7lner.c.youtube.com/videoplayback?mt=1361429411&ipbits=8&fexp=919113%2C927902%2C916716%2C916612%2C901447%2C902545%2C920704%2C912806%2C902000%2C922403%2C922405%2C929901%2C913605%2C925006%2C906938%2C931202%2C908529%2C920201%2C930101%2C926403%2C901451&newshard=yes&key=yt1&signature=2AB1FC44B4EDA0C5DDF4E715FDCA19FFB16E0FF7.732382C58B3C8CBC4840D462940DFE2FEC9FBE53&source=youtube&sver=3&mv=m&expire=1361452937&ms=au&itag=36&el=watch&dnc=1&cp=U0hVRlRQUF9IUUNONV9MSlRKOjVNc1BwWTUxSVR2&upn=r3oQUqMCths&sparams=cp%2Cid%2Cip%2Cipbits%2Citag%2Cratebypass%2Csource%2Cupn%2Cexpire&ip=117.215.128.101&app=youtube_mobile&ratebypass=yes&yms=0PtNsY21DUs&id=2a147a30c3da7601 

這意味着setting movie path網址,我需要..但它在輸出自動出現。 。做我可以抓取該網址...所以,我可以下載

我只是播放Youtube視頻,進入網頁視圖

[webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://m.youtube.com"]]]; 

回答

1

YouTube是一個有點在iOS中很棘手,因爲它沒有提供真正的視頻鏈接。 有一個很好的插件LBYoutubeView,它處理爲您提取真實的網址。你可以看看鏈接提取器,如果你只是想下載視頻...

另一個機會是使用gdata objective c客戶端和導入提取鏈接在UIWebView。但請記住,gdata客戶端不會像上述框架那樣爲您提供真正的鏈接。

而且請注意,模擬器中的UIWebivews < 6.0可能do not支持在UIWebview中播放YouTube視頻。

至少在這裏是如何直接在一個UIWebView中嵌入YouTube視頻的例子:

[self.webView loadRequest:[NSURLRequest requestWithURL: 
          [NSURL URLWithString: 
          [NSString stringWithFormat:@"%@%@", @"http://www.youtube.com/embed/", @"THEYOUTUBEID"]]]]; 
+0

LBYoutubeView提取URL只是爲了使其與MPMoviePlayer兼容,發揮的WebView視頻,你不需要提取任何!你有沒有檢查提取的網址是怎麼樣的?如果沒有,嘗試一下。 – 2013-02-21 09:04:22

+0

@MilKyWaY這就是我所說的,你並不一定需要真正的URL,但如果你想下載它,你確實需要真正的URL - 你看過這個問題嗎? – Alexander 2013-02-21 09:07:14

+0

好的,謝謝,現在假設我得到的鏈接是'http://r19---sn-a5m7lner.c.youtube.com/videoplayback?mt=1361429411&ipbits=8&fexp=919113%2C927902%2C916716%2C916612%2C901447%2C90% 2C926403%2C901451&newshard = yes&key = yt1&signature = 2AB1FC44B4EDA0C5DDF4E715FDCA19FFB16E0FF7'現在如果我下載URL,它會給我起名字,就像只有'videoplayback' ..how我得到視頻的實際名稱 – Christien 2013-02-21 09:07:37

0

您可以使用HCYoutubeParser: https://github.com/hellozimi/HCYoutubeParser

NSString *videoUrl = [NSString stringWithFormat:@"https://www.youtube.com/watch?v=%@", videoId]; 
NSDictionary *videos = [HCYoutubeParser h264videosWithYoutubeURL:[NSURL URLWithString:videoUrl]]; 
videoUrl = videos[@"small"]; 
相關問題