]> jfr.im git - yt-dlp.git/blobdiff - devscripts/check-porn.py
[ie/youtube] Fix comments extraction (#9775)
[yt-dlp.git] / devscripts / check-porn.py
index 6a5bd9eda333246c47064bf84cfc03da09de4caf..fc72c3051e9b1bc916695ffb8be85f5fad7c0399 100644 (file)
@@ -1,6 +1,4 @@
-#!/usr/bin/env python
-from __future__ import unicode_literals
-
+#!/usr/bin/env python3
 """
 This script employs a VERY basic heuristic ('porn' in webpage.lower()) to check
 if we are not 'age_limit' tagging some porn site
 # Allow direct execution
 import os
 import sys
+
 sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
 
-from test.helper import get_testcases
-from youtube_dl.utils import compat_urllib_parse_urlparse
-from youtube_dl.utils import compat_urllib_request
+
+import urllib.parse
+import urllib.request
+
+from test.helper import gettestcases
 
 if len(sys.argv) > 1:
     METHOD = 'LIST'
 else:
     METHOD = 'EURISTIC'
 
-for test in get_testcases():
+for test in gettestcases():
     if METHOD == 'EURISTIC':
         try:
-            webpage = compat_urllib_request.urlopen(test['url'], timeout=10).read()
-        except:
-            print('\nFail: {0}'.format(test['name']))
+            webpage = urllib.request.urlopen(test['url'], timeout=10).read()
+        except Exception:
+            print('\nFail: {}'.format(test['name']))
             continue
 
         webpage = webpage.decode('utf8', 'replace')
         RESULT = 'porn' in webpage.lower()
 
     elif METHOD == 'LIST':
-        domain = compat_urllib_parse_urlparse(test['url']).netloc
+        domain = urllib.parse.urlparse(test['url']).netloc
         if not domain:
-            print('\nFail: {0}'.format(test['name']))
+            print('\nFail: {}'.format(test['name']))
             continue
         domain = '.'.join(domain.split('.')[-2:])
 
         RESULT = ('.' + domain + '\n' in LIST or '\n' + domain + '\n' in LIST)
 
-    if RESULT and ('info_dict' not in test or 'age_limit' not in test['info_dict'] or
-                   test['info_dict']['age_limit'] != 18):
-        print('\nPotential missing age_limit check: {0}'.format(test['name']))
+    if RESULT and ('info_dict' not in test or 'age_limit' not in test['info_dict']
+                   or test['info_dict']['age_limit'] != 18):
+        print('\nPotential missing age_limit check: {}'.format(test['name']))
 
-    elif not RESULT and ('info_dict' in test and 'age_limit' in test['info_dict'] and
-                         test['info_dict']['age_limit'] == 18):
-        print('\nPotential false negative: {0}'.format(test['name']))
+    elif not RESULT and ('info_dict' in test and 'age_limit' in test['info_dict']
+                         and test['info_dict']['age_limit'] == 18):
+        print('\nPotential false negative: {}'.format(test['name']))
 
     else:
         sys.stdout.write('.')