projects
/
youtube-dl
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
f74e22a
)
Support more common YouTube playlist URLs
author
Ricardo Garcia
<sarbalap+freshmeat@gmail.com>
Sat, 12 Feb 2011 19:19:20 +0000
(20:19 +0100)
committer
Ricardo Garcia
<sarbalap+freshmeat@gmail.com>
Sat, 12 Feb 2011 19:19:20 +0000
(20:19 +0100)
youtube-dl
patch
|
blob
|
history
diff --git
a/youtube-dl
b/youtube-dl
index dd875a38eabf84b1e6e952abcc7bebf20956e590..0f9724637bc65378c9a49ebdd177fa13740399e1 100755
(executable)
--- a/
youtube-dl
+++ b/
youtube-dl
@@
-2096,7
+2096,7
@@
class YahooSearchIE(InfoExtractor):
class YoutubePlaylistIE(InfoExtractor):
"""Information Extractor for YouTube playlists."""
class YoutubePlaylistIE(InfoExtractor):
"""Information Extractor for YouTube playlists."""
- _VALID_URL = r'(?:http://)?(?:\w+\.)?youtube.com/(?:(?:view_play_list|my_playlists|artist)\?.*?(p|a)=|user/.*?/user/|p/
)([^&]+)
.*'
+ _VALID_URL = r'(?:http://)?(?:\w+\.)?youtube.com/(?:(?:view_play_list|my_playlists|artist)\?.*?(p|a)=|user/.*?/user/|p/
|user/.*?#[pg]/c/)([0-9A-Za-z]+)(?:/.*?/([0-9A-Za-z_-]+))?
.*'
_TEMPLATE_URL = 'http://www.youtube.com/%s?%s=%s&page=%s&gl=US&hl=en'
_VIDEO_INDICATOR = r'/watch\?v=(.+?)&'
_MORE_PAGES_INDICATOR = r'(?m)>\s*Next\s*</a>'
_TEMPLATE_URL = 'http://www.youtube.com/%s?%s=%s&page=%s&gl=US&hl=en'
_VIDEO_INDICATOR = r'/watch\?v=(.+?)&'
_MORE_PAGES_INDICATOR = r'(?m)>\s*Next\s*</a>'
@@
-2124,6
+2124,11
@@
class YoutubePlaylistIE(InfoExtractor):
self._downloader.trouble(u'ERROR: invalid url: %s' % url)
return
self._downloader.trouble(u'ERROR: invalid url: %s' % url)
return
+ # Single video case
+ if mobj.group(3) is not None:
+ self._youtube_ie.extract(mobj.group(3))
+ return
+
# Download playlist pages
# prefix is 'p' as default for playlists but there are other types that need extra care
playlist_prefix = mobj.group(1)
# Download playlist pages
# prefix is 'p' as default for playlists but there are other types that need extra care
playlist_prefix = mobj.group(1)