Allow users to specify an age limit (fixes #1545)
[youtube-dl] / youtube_dl / YoutubeDL.py
index 2503fd09b976b86da60c9a82fd31495266106c97..6258c141e4206756f72824f5d6d59f074acfa41e 100644 (file)
@@ -84,6 +84,8 @@ class YoutubeDL(object):
     cachedir:          Location of the cache files in the filesystem.
                        None to disable filesystem cache.
     noplaylist:        Download single video instead of a playlist if in doubt.
+    age_limit:         An integer representing the user's age in years.
+                       Unsuitable videos for the given age are skipped.
     
     The following parameters are not used by YoutubeDL itself, they are used by
     the FileDownloader:
@@ -309,6 +311,10 @@ class YoutubeDL(object):
             dateRange = self.params.get('daterange', DateRange())
             if date not in dateRange:
                 return u'[download] %s upload date is not in range %s' % (date_from_str(date).isoformat(), dateRange)
+        age_limit = self.params.get('age_limit')
+        if age_limit is not None:
+            if age_limit < info_dict.get('age_restriction', 0):
+                return u'Skipping "' + title + '" because it is age restricted'
         return None
         
     def extract_info(self, url, download=True, ie_key=None, extra_info={}):