mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-30 22:25:19 +00:00 
			
		
		
		
	[safari] Add support for learning.oreilly.com (closes #18510)
This commit is contained in:
		| @@ -15,10 +15,10 @@ from ..utils import ( | ||||
|  | ||||
|  | ||||
| class SafariBaseIE(InfoExtractor): | ||||
|     _LOGIN_URL = 'https://www.safaribooksonline.com/accounts/login/' | ||||
|     _LOGIN_URL = 'https://learning.oreilly.com/accounts/login/' | ||||
|     _NETRC_MACHINE = 'safari' | ||||
|  | ||||
|     _API_BASE = 'https://www.safaribooksonline.com/api/v1' | ||||
|     _API_BASE = 'https://learning.oreilly.com/api/v1' | ||||
|     _API_FORMAT = 'json' | ||||
|  | ||||
|     LOGGED_IN = False | ||||
| @@ -76,7 +76,7 @@ class SafariIE(SafariBaseIE): | ||||
|     IE_DESC = 'safaribooksonline.com online video' | ||||
|     _VALID_URL = r'''(?x) | ||||
|                         https?:// | ||||
|                             (?:www\.)?safaribooksonline\.com/ | ||||
|                             (?:www\.)?(?:safaribooksonline|learning\.oreilly)\.com/ | ||||
|                             (?: | ||||
|                                 library/view/[^/]+/(?P<course_id>[^/]+)/(?P<part>[^/?\#&]+)\.html| | ||||
|                                 videos/[^/]+/[^/]+/(?P<reference_id>[^-]+-[^/?\#&]+) | ||||
| @@ -104,6 +104,9 @@ class SafariIE(SafariBaseIE): | ||||
|     }, { | ||||
|         'url': 'https://www.safaribooksonline.com/videos/python-programming-language/9780134217314/9780134217314-PYMC_13_00', | ||||
|         'only_matching': True, | ||||
|     }, { | ||||
|         'url': 'https://learning.oreilly.com/videos/hadoop-fundamentals-livelessons/9780133392838/9780133392838-00_SeriesIntro', | ||||
|         'only_matching': True, | ||||
|     }] | ||||
|  | ||||
|     _PARTNER_ID = '1926081' | ||||
| @@ -160,7 +163,7 @@ class SafariIE(SafariBaseIE): | ||||
|  | ||||
| class SafariApiIE(SafariBaseIE): | ||||
|     IE_NAME = 'safari:api' | ||||
|     _VALID_URL = r'https?://(?:www\.)?safaribooksonline\.com/api/v1/book/(?P<course_id>[^/]+)/chapter(?:-content)?/(?P<part>[^/?#&]+)\.html' | ||||
|     _VALID_URL = r'https?://(?:www\.)?(?:safaribooksonline|learning\.oreilly)\.com/api/v1/book/(?P<course_id>[^/]+)/chapter(?:-content)?/(?P<part>[^/?#&]+)\.html' | ||||
|  | ||||
|     _TESTS = [{ | ||||
|         'url': 'https://www.safaribooksonline.com/api/v1/book/9780133392838/chapter/part00.html', | ||||
| @@ -185,7 +188,7 @@ class SafariCourseIE(SafariBaseIE): | ||||
|     _VALID_URL = r'''(?x) | ||||
|                     https?:// | ||||
|                         (?: | ||||
|                             (?:www\.)?safaribooksonline\.com/ | ||||
|                             (?:www\.)?(?:safaribooksonline|learning\.oreilly)\.com/ | ||||
|                             (?: | ||||
|                                 library/view/[^/]+| | ||||
|                                 api/v1/book| | ||||
| @@ -213,6 +216,9 @@ class SafariCourseIE(SafariBaseIE): | ||||
|     }, { | ||||
|         'url': 'https://www.safaribooksonline.com/videos/python-programming-language/9780134217314', | ||||
|         'only_matching': True, | ||||
|     }, { | ||||
|         'url': 'https://learning.oreilly.com/videos/hadoop-fundamentals-livelessons/9780133392838', | ||||
|         'only_matching': True, | ||||
|     }] | ||||
|  | ||||
|     @classmethod | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Sergey M․
					Sergey M․