Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Parsing 将url\u编码的\u fmt\u流\u映射解码为有效url_Parsing_Url_Youtube_Uri - Fatal编程技术网

Parsing 将url\u编码的\u fmt\u流\u映射解码为有效url

Parsing 将url\u编码的\u fmt\u流\u映射解码为有效url,parsing,url,youtube,uri,Parsing,Url,Youtube,Uri,我使用url编码的fmt流图来获取Youtube视频流“url”列表。 我想使用这些URL在我的视频视图中显示Youtube视频 我的方法几乎返回一个字符串数组,其中包含如下字符串: sig=3E0D90E459ADEF9F88553D716B9275930A8AA418.ad0319f9287244e34cca97f7de245c06dd46c5&itag=45&fallback_host=tc.v22.cache5.c.youtube.com&url=http%3A%2F%2Fr4----s

我使用url编码的fmt流图来获取Youtube视频流“url”列表。 我想使用这些URL在我的视频视图中显示Youtube视频

我的方法几乎返回一个字符串数组,其中包含如下字符串:

sig=3E0D90E459ADEF9F88553D716B9275930A8AA418.ad0319f9287244e34cca97f7de245c06dd46c5&itag=45&fallback_host=tc.v22.cache5.c.youtube.com&url=http%3A%2F%2Fr4----sn-uigxx50n-8pxl.c.youtube.com%2Fvideoplayback%3Fsparams%3Dcp%252Cid%252Cid%252Cip%252Cip%252Cip%252Cip%cipt%cipt%citag%citag%252%252%252%252%252Csource%cupn%252%252%252Csource%252%252%cupn%252%252%ceNV9RSKFIONZ3SKXB3HFDUP%26source%3Dyoutube%26fexp%3D919110%252C913564%252C916624%252C932000%252C906383%252C902000%252C919512%252C929903%252C931202%252C900821%252C900823%252C931203%252C931401%252C909419%252C913566%252C908529%252C930807%252C919373%252C900803%252C906836%252C920102%252C929090903%252C92062%252C9090903%252C920626%252C93903%252C9026%%3Dm%26mt%3D1364933359%26sver%3D3%26itag%3D45%26key%3Dyt1%26ip%3D178.115.248.80%26newshard%3Dyes%26upn%3DNLMBgU-0oUc%26expire%3D1364959706%26ipbits%3D8%26ratebypass%3Dyes&quality=hd720&type=video%2Fwebm%3B+codecs%3D%22vp8.0%2C+vorbis%22

如果仔细查看,您会发现这个字符串实际上包含有效信息。不幸的是,我不知道如何从中提取一个有效的url

我该怎么做


如果我用上面的字符串创建一个URI并将其添加到我的视频视图中,将弹出一条消息“无法播放此视频”。

您可能知道,youtube链接如下所示:

http://r6---sn-nhpax-ua8l.c.youtube.com/videoplayback?algorithm=throttle-factor&burst=40&cp=U0hVTFlTUV9HUUNONV9RTVVCOkk4ams1XzRlZUpq&cpn=qAthIxAZB16Q6_qB&expire=1367983127&factor=1.25&fexp=927900%2C919357%2C921716%2C916623%2C922911%2C931009%2C932000%2C932004%2C906383%2C904479%2C901208%2C925714%2C929119%2C931202%2C900821%2C900823%2C912518%2C911416%2C930807%2C919373%2C906836%2C926403%2C900824%2C912711%2C929606%2C910075&id=932a6c200e40b791&ip=84.228.249.95&ipbits=8&itag=34&key=yt1&ms=au&mt=1367957244&mv=m&newshard=yes&ratebypass=yes&signature=7E86D1813AE13CEB544CFF3749FBD042FF50EE91.AF7D6D9DCF286D291825630E733B3407683C46C9&source=youtube&sparams=algorithm%2Cburst%2Ccp%2Cfactor%2Cid%2Cip%2Cipbits%2Citag%2Csource%2Cupn%2Cexpire&sver=3&upn=t0jDC5Yk7Go
正如您所说,我们需要的所有参数都显示在您的字符串中

我们需要从字符串中提取两个重要参数:url和签名

链接最终应该是这样的:url+“&signature=“+sig”


你可以看看我的代码,我从youtube链接中提取了所有可用的链接。这是一款android应用程序的java Written:

谢谢您的努力

我通过坚持官方的YouTube API解决了这个问题。另见这个问题: