diff --git a/youtube_dl/extractor/ciscolive.py b/youtube_dl/extractor/ciscolive.py index d9236146f..ed08f2422 100644 --- a/youtube_dl/extractor/ciscolive.py +++ b/youtube_dl/extractor/ciscolive.py @@ -90,8 +90,11 @@ class CiscoLiveSessionIE(CiscoLiveBaseIE): 'timestamp': 1548873245, 'upload_date': '20190130', 'uploader_id': '5647924234001', - 'location': 'Hall 6 - The Hub, DevNet Classroom 1', + 'location': 'Hall 6 - The Hub, DevNet Classroom 1', }, + }, { + 'url': 'https://www.ciscolive.com/global/on-demand-library.html?#/session/1490051371645001kNaS', + 'only_matching': True, }] def _real_extract(self, url): @@ -101,7 +104,7 @@ class CiscoLiveSessionIE(CiscoLiveBaseIE): class CiscoLiveSearchIE(CiscoLiveBaseIE): - _VALID_URL = r'https?://(?:www\.)?ciscolive(?:\.cisco)?\.com/[^?]*\?search' + _VALID_URL = r'https?://(?:www\.)?ciscolive(?:\.cisco)?\.com/(?:global/)?on-demand-library(?:\.html|/)' _TESTS = [{ 'url': 'https://ciscolive.cisco.com/on-demand-library/?search.event=ciscoliveus2018&search.technicallevel=scpsSkillLevel_aintroductory&search.focus=scpsSessionFocus_designAndDeployment#/', 'info_dict': { @@ -111,6 +114,9 @@ class CiscoLiveSearchIE(CiscoLiveBaseIE): }, { 'url': 'https://ciscolive.cisco.com/on-demand-library/?search.technology=scpsTechnology_applicationDevelopment&search.technology=scpsTechnology_ipv6&search.focus=scpsSessionFocus_troubleshootingTroubleshooting#/', 'only_matching': True, + }, { + 'url': 'https://www.ciscolive.com/global/on-demand-library.html?search.technicallevel=scpsSkillLevel_aintroductory&search.event=ciscoliveemea2019&search.technology=scpsTechnology_dataCenter&search.focus=scpsSessionFocus_bestPractices#/', + 'only_matching': True, }] @classmethod @@ -153,4 +159,3 @@ class CiscoLiveSearchIE(CiscoLiveBaseIE): query['type'] = 'session' return self.playlist_result( self._entries(query, url), playlist_title='Search query') -