【发布时间】:2014-11-01 07:42:38
【问题描述】:
我想用 java 从 youtube 的 URL 中获取 v=id
Youtube URL 格式示例:
http://www.youtube.com/watch?v=u8nQa1cJyX8&a=GxdCwVVULXctT2lYDEPllDR0LRTutYfW http://www.youtube.com/watch?v=u8nQa1cJyX8 http://youtu.be/0zM3nApSvMg http://www.youtube.com/user/IngridMichaelsonVEVO#p/a/u/1/KdwsulMb8EQ http://youtu.be/dQw4w9WgXcQhttp://www.youtube.com/embed/dQw4w9WgXcQ http://www.youtube.com/v/dQw4w9WgXcQ http://www.youtube.com/e/dQw4w9WgXcQ http://www.youtube.com/watch?v=dQw4w9WgXcQ http://www.youtube.com/?v=dQw4w9WgXcQ http://www.youtube.com/watch?feature=player_embedded&v=dQw4w9WgXcQ http://www.youtube.com/?feature=player_embedded&v=dQw4w9WgXcQ http://www.youtube.com/user/IngridMichaelsonVEVO#p/u/11/KdwsulMb8EQ http://www.youtube-nocookie.com/v/6L3ZvIMwZFM?version=3&hl=en_US&rel=0
或任何其他在 url 中包含视频 ID 的 youtube 格式
我正在尝试:-
Pattern compiledPattern = Pattern.compile("(?<=v=).*?(?=&|$)",Pattern.CASE_INSENSITIVE);
Matcher matcher = compiledPattern.matcher(sourceUrl);
if(matcher.find()){
setVideoId(matcher.group());
}
它不仅仅适用于一个 URL :-
【问题讨论】:
-
点击链接。看看它把你重定向到哪里
-
我怎样才能得到它的ID?
-
如果您向该 URL 发送请求,它将以 3xx HTTP 响应响应您,将您重定向到实际的 Youtube URL。
youtube.com/watch?v=.....格式! en.wikipedia.org/wiki/List_of_HTTP_status_codes#3xx_Redirection -
谢谢!你说的对。但是我怎么能用java代码处理呢?