diff options
| -rw-r--r-- | youtube_dl/extractor/pornhub.py | 18 | 
1 files changed, 9 insertions, 9 deletions
diff --git a/youtube_dl/extractor/pornhub.py b/youtube_dl/extractor/pornhub.py index e032817f2..f6777cd26 100644 --- a/youtube_dl/extractor/pornhub.py +++ b/youtube_dl/extractor/pornhub.py @@ -227,13 +227,20 @@ class PornHubIE(InfoExtractor):  class PornHubPlaylistBaseIE(InfoExtractor):      def _extract_entries(self, webpage): +        # Only process container div with main playlist content skipping +        # drop-down menu that uses similar pattern for videos (see +        # https://github.com/rg3/youtube-dl/issues/11594). +        container = self._search_regex( +            r'(?s)(<div[^>]+class=["\']container.+)', webpage, +            'container', default=webpage) +          return [              self.url_result(                  'http://www.pornhub.com/%s' % video_url,                  PornHubIE.ie_key(), video_title=title)              for video_url, title in orderedSet(re.findall(                  r'href="/?(view_video\.php\?.*\bviewkey=[\da-z]+[^"]*)"[^>]*\s+title="([^"]+)"', -                webpage)) +                container))          ]      def _real_extract(self, url): @@ -241,14 +248,7 @@ class PornHubPlaylistBaseIE(InfoExtractor):          webpage = self._download_webpage(url, playlist_id) -        # Only process container div with main playlist content skipping -        # drop-down menu that uses similar pattern for videos (see -        # https://github.com/rg3/youtube-dl/issues/11594). -        container = self._search_regex( -            r'(?s)(<div[^>]+class=["\']container.+)', webpage, -            'container', default=webpage) - -        entries = self._extract_entries(container) +        entries = self._extract_entries(webpage)          playlist = self._parse_json(              self._search_regex(  | 
