aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRemita Amine <remitamine@gmail.com>2018-12-17 16:34:51 +0100
committerRemita Amine <remitamine@gmail.com>2018-12-17 16:35:29 +0100
commit7216e9bff71b4c537bb8d56386d789bb83f921f9 (patch)
treee8673606f6352f3897c213bd038fb79c0456d619
parent4cee62ade0d991eedb2feae927c44370be3c389e (diff)
downloadyoutube-dl-7216e9bff71b4c537bb8d56386d789bb83f921f9.tar.xz
[discovery] Add support for Scripps Networks watch domains(closes #17947)
-rw-r--r--youtube_dl/extractor/discovery.py35
-rw-r--r--youtube_dl/extractor/scrippsnetworks.py29
2 files changed, 31 insertions, 33 deletions
diff --git a/youtube_dl/extractor/discovery.py b/youtube_dl/extractor/discovery.py
index 3589bd428..44fbc41bb 100644
--- a/youtube_dl/extractor/discovery.py
+++ b/youtube_dl/extractor/discovery.py
@@ -17,16 +17,29 @@ from ..compat import compat_HTTPError
class DiscoveryIE(DiscoveryGoBaseIE):
- _VALID_URL = r'''(?x)https?://(?:www\.)?(?P<site>
- discovery|
- investigationdiscovery|
- discoverylife|
- animalplanet|
- ahctv|
- destinationamerica|
- sciencechannel|
- tlc|
- velocity
+ _VALID_URL = r'''(?x)https?://
+ (?P<site>
+ (?:www\.)?
+ (?:
+ discovery|
+ investigationdiscovery|
+ discoverylife|
+ animalplanet|
+ ahctv|
+ destinationamerica|
+ sciencechannel|
+ tlc|
+ velocity
+ )|
+ watch\.
+ (?:
+ hgtv|
+ foodnetwork|
+ travelchannel|
+ diynetwork|
+ cookingchanneltv|
+ motortrend
+ )
)\.com(?P<path>/tv-shows/[^/]+/(?:video|full-episode)s/(?P<id>[^./?#]+))'''
_TESTS = [{
'url': 'https://www.discovery.com/tv-shows/cash-cab/videos/dave-foley',
@@ -71,7 +84,7 @@ class DiscoveryIE(DiscoveryGoBaseIE):
if not access_token:
access_token = self._download_json(
- 'https://www.%s.com/anonymous' % site, display_id, query={
+ 'https://%s.com/anonymous' % site, display_id, query={
'authRel': 'authorization',
'client_id': try_get(
react_data, lambda x: x['application']['apiClientId'],
diff --git a/youtube_dl/extractor/scrippsnetworks.py b/youtube_dl/extractor/scrippsnetworks.py
index 4023aeef8..8b3275735 100644
--- a/youtube_dl/extractor/scrippsnetworks.py
+++ b/youtube_dl/extractor/scrippsnetworks.py
@@ -19,7 +19,7 @@ class ScrippsNetworksWatchIE(AWSIE):
_VALID_URL = r'''(?x)
https?://
watch\.
- (?P<site>hgtv|foodnetwork|travelchannel|diynetwork|cookingchanneltv|geniuskitchen)\.com/
+ (?P<site>geniuskitchen)\.com/
(?:
player\.[A-Z0-9]+\.html\#|
show/(?:[^/]+/){2}|
@@ -28,38 +28,23 @@ class ScrippsNetworksWatchIE(AWSIE):
(?P<id>\d+)
'''
_TESTS = [{
- 'url': 'http://watch.hgtv.com/show/HGTVE/Best-Ever-Treehouses/2241515/Best-Ever-Treehouses/',
- 'md5': '26545fd676d939954c6808274bdb905a',
+ 'url': 'http://watch.geniuskitchen.com/player/3787617/Ample-Hills-Ice-Cream-Bike/',
'info_dict': {
- 'id': '4173834',
+ 'id': '4194875',
'ext': 'mp4',
- 'title': 'Best Ever Treehouses',
- 'description': "We're searching for the most over the top treehouses.",
+ 'title': 'Ample Hills Ice Cream Bike',
+ 'description': 'Courtney Rada churns up a signature GK Now ice cream with The Scoopmaster.',
'uploader': 'ANV',
- 'upload_date': '20170922',
- 'timestamp': 1506056400,
+ 'upload_date': '20171011',
+ 'timestamp': 1507698000,
},
'params': {
'skip_download': True,
},
'add_ie': [AnvatoIE.ie_key()],
- }, {
- 'url': 'http://watch.diynetwork.com/show/DSAL/Salvage-Dawgs/2656646/Covington-Church/',
- 'only_matching': True,
- }, {
- 'url': 'http://watch.diynetwork.com/player.HNT.html#2656646',
- 'only_matching': True,
- }, {
- 'url': 'http://watch.geniuskitchen.com/player/3787617/Ample-Hills-Ice-Cream-Bike/',
- 'only_matching': True,
}]
_SNI_TABLE = {
- 'hgtv': 'hgtv',
- 'diynetwork': 'diy',
- 'foodnetwork': 'food',
- 'cookingchanneltv': 'cook',
- 'travelchannel': 'trav',
'geniuskitchen': 'genius',
}