From 748c147a058a011b463c2754f57829960670ff9a Mon Sep 17 00:00:00 2001 From: Parmjit Virk Date: Thu, 15 Feb 2018 21:56:36 -0600 Subject: [PATCH 1/3] [PornHub] Add support for channel videos --- youtube_dl/extractor/extractors.py | 1 + youtube_dl/extractor/pornhub.py | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/youtube_dl/extractor/extractors.py b/youtube_dl/extractor/extractors.py index c996de50a..c5e208ed9 100644 --- a/youtube_dl/extractor/extractors.py +++ b/youtube_dl/extractor/extractors.py @@ -829,6 +829,7 @@ from .pornflip import PornFlipIE from .pornhd import PornHdIE from .pornhub import ( PornHubIE, + PornHubChannelVideosIE, PornHubPlaylistIE, PornHubUserVideosIE, ) diff --git a/youtube_dl/extractor/pornhub.py b/youtube_dl/extractor/pornhub.py index 3428458af..8555d5796 100644 --- a/youtube_dl/extractor/pornhub.py +++ b/youtube_dl/extractor/pornhub.py @@ -306,3 +306,23 @@ class PornHubUserVideosIE(PornHubPlaylistBaseIE): entries.extend(page_entries) return self.playlist_result(entries, user_id) + + +class PornHubChannelVideosIE(PornHubUserVideosIE): + _VALID_URL = r'https?://(?:www\.)?pornhub\.com/channels/(?P[^/]+)/videos' + _TESTS = [{ + # sorted as Top Rated Videos + 'url': 'https://www.pornhub.com/channels/povd/videos?o=ra', + 'info_dict': { + 'id': 'povd', + }, + 'playlist_mincount': 293, + }, { + # Most Recent Videos + 'url': 'https://www.pornhub.com/channels/povd/videos?o=da', + 'only_matching': True, + }, { + # Most Viewed Videos + 'url': 'https://www.pornhub.com/channels/povd/videos?o=vi', + 'only_matching': True, + }] From 539dd2b83ceec3691ce97cb7384eefd1e6f91321 Mon Sep 17 00:00:00 2001 From: Parmjit Virk Date: Fri, 16 Feb 2018 11:13:40 -0600 Subject: [PATCH 2/3] [PornHub] Applied requested fixes for PR #15614 --- youtube_dl/extractor/extractors.py | 1 - youtube_dl/extractor/pornhub.py | 44 ++++++++++++++++-------------- 2 files changed, 23 insertions(+), 22 deletions(-) diff --git a/youtube_dl/extractor/extractors.py b/youtube_dl/extractor/extractors.py index c5e208ed9..c996de50a 100644 --- a/youtube_dl/extractor/extractors.py +++ b/youtube_dl/extractor/extractors.py @@ -829,7 +829,6 @@ from .pornflip import PornFlipIE from .pornhd import PornHdIE from .pornhub import ( PornHubIE, - PornHubChannelVideosIE, PornHubPlaylistIE, PornHubUserVideosIE, ) diff --git a/youtube_dl/extractor/pornhub.py b/youtube_dl/extractor/pornhub.py index 8555d5796..c97e2defb 100644 --- a/youtube_dl/extractor/pornhub.py +++ b/youtube_dl/extractor/pornhub.py @@ -275,7 +275,7 @@ class PornHubPlaylistIE(PornHubPlaylistBaseIE): class PornHubUserVideosIE(PornHubPlaylistBaseIE): - _VALID_URL = r'https?://(?:www\.)?pornhub\.com/users/(?P[^/]+)/videos' + _VALID_URL = r'https?://(?:www\.)?pornhub\.com/(?:user|channel)s/(?P[^/]+)/videos' _TESTS = [{ 'url': 'http://www.pornhub.com/users/zoe_ph/videos/public', 'info_dict': { @@ -285,6 +285,28 @@ class PornHubUserVideosIE(PornHubPlaylistBaseIE): }, { 'url': 'http://www.pornhub.com/users/rushandlia/videos', 'only_matching': True, + }, { + # default sorting as Top Rated Videos + 'url': 'https://www.pornhub.com/channels/povd/videos', + 'info_dict': { + 'id': 'povd', + }, + 'playlist_mincount': 293, + 'params': { + 'skip_download': True, + }, + }, { + # Top Rated Videos + 'url': 'https://www.pornhub.com/channels/povd/videos?o=ra', + 'only_matching': True, + }, { + # Most Recent Videos + 'url': 'https://www.pornhub.com/channels/povd/videos?o=da', + 'only_matching': True, + }, { + # Most Viewed Videos + 'url': 'https://www.pornhub.com/channels/povd/videos?o=vi', + 'only_matching': True, }] def _real_extract(self, url): @@ -306,23 +328,3 @@ class PornHubUserVideosIE(PornHubPlaylistBaseIE): entries.extend(page_entries) return self.playlist_result(entries, user_id) - - -class PornHubChannelVideosIE(PornHubUserVideosIE): - _VALID_URL = r'https?://(?:www\.)?pornhub\.com/channels/(?P[^/]+)/videos' - _TESTS = [{ - # sorted as Top Rated Videos - 'url': 'https://www.pornhub.com/channels/povd/videos?o=ra', - 'info_dict': { - 'id': 'povd', - }, - 'playlist_mincount': 293, - }, { - # Most Recent Videos - 'url': 'https://www.pornhub.com/channels/povd/videos?o=da', - 'only_matching': True, - }, { - # Most Viewed Videos - 'url': 'https://www.pornhub.com/channels/povd/videos?o=vi', - 'only_matching': True, - }] From b03f6ae0da4cc2896198fe3f22a54ec5a833b676 Mon Sep 17 00:00:00 2001 From: Sergey M Date: Sat, 17 Feb 2018 01:16:08 +0700 Subject: [PATCH 3/3] Update pornhub.py --- youtube_dl/extractor/pornhub.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/youtube_dl/extractor/pornhub.py b/youtube_dl/extractor/pornhub.py index c97e2defb..281a4f05e 100644 --- a/youtube_dl/extractor/pornhub.py +++ b/youtube_dl/extractor/pornhub.py @@ -292,9 +292,6 @@ class PornHubUserVideosIE(PornHubPlaylistBaseIE): 'id': 'povd', }, 'playlist_mincount': 293, - 'params': { - 'skip_download': True, - }, }, { # Top Rated Videos 'url': 'https://www.pornhub.com/channels/povd/videos?o=ra',