Browse Source

[collegehumor] Add support for age_limit

Philipp Hagemeister 11 years ago
parent
commit
55033ffb0a
1 changed files with 10 additions and 1 deletions
  1. 10 1
      youtube_dl/extractor/collegehumor.py

+ 10 - 1
youtube_dl/extractor/collegehumor.py

@@ -14,6 +14,7 @@ class CollegeHumorIE(InfoExtractor):
         u'info_dict': {
         u'info_dict': {
             u'title': u'Comic-Con Cosplay Catastrophe',
             u'title': u'Comic-Con Cosplay Catastrophe',
             u'description': u'Fans get creative this year at San Diego.  Too',
             u'description': u'Fans get creative this year at San Diego.  Too',
+            u'age_limit': 13,
         },
         },
     },
     },
     {
     {
@@ -23,6 +24,7 @@ class CollegeHumorIE(InfoExtractor):
         u'info_dict': {
         u'info_dict': {
             u'title': u'Font Conference',
             u'title': u'Font Conference',
             u'description': u'This video wasn\'t long enough, so we made it double-spaced.',
             u'description': u'This video wasn\'t long enough, so we made it double-spaced.',
+            u'age_limit': 10,
         },
         },
     }]
     }]
 
 
@@ -35,6 +37,13 @@ class CollegeHumorIE(InfoExtractor):
             jsonUrl, video_id, u'Downloading info JSON'))
             jsonUrl, video_id, u'Downloading info JSON'))
         vdata = data['video']
         vdata = data['video']
 
 
+        AGE_LIMITS = {'nc17': 18, 'r': 18, 'pg13': 13, 'pg': 10, 'g': 0}
+        rating = vdata.get('rating')
+        if rating:
+            age_limit = AGE_LIMITS.get(rating.lower())
+        else:
+            age_limit = None  # None = No idea
+
         PREFS = {'high_quality': 2, 'low_quality': 0}
         PREFS = {'high_quality': 2, 'low_quality': 0}
         formats = []
         formats = []
         for format_key in ('mp4', 'webm'):
         for format_key in ('mp4', 'webm'):
@@ -45,7 +54,6 @@ class CollegeHumorIE(InfoExtractor):
                     'format': format_key,
                     'format': format_key,
                     'preference': PREFS.get(qname),
                     'preference': PREFS.get(qname),
                 })
                 })
-
         self._sort_formats(formats)
         self._sort_formats(formats)
 
 
         return {
         return {
@@ -54,4 +62,5 @@ class CollegeHumorIE(InfoExtractor):
             'description': vdata.get('description'),
             'description': vdata.get('description'),
             'thumbnail': vdata.get('thumbnail'),
             'thumbnail': vdata.get('thumbnail'),
             'formats': formats,
             'formats': formats,
+            'age_limit': age_limit,
         }
         }