summaryrefslogtreecommitdiff
path: root/searx_extra/update/update_ahmia_blacklist.py
diff options
context:
space:
mode:
authorAlexandre Flament <alex@al-f.net>2021-03-05 09:43:39 +0100
committerGitHub <noreply@github.com>2021-03-05 09:43:39 +0100
commitaaae9a209e4d6518965064e8b515e411fb8dd0d6 (patch)
tree922a8875536ac058d501bb207c04219744eee538 /searx_extra/update/update_ahmia_blacklist.py
parent1d10ae175c0929d383d268f56bfadb304365ccf2 (diff)
parentb8cd3264644208d7afa1a239f829222d45226334 (diff)
Merge pull request #2600 from dalf/searx-extra
Add searx_extra package
Diffstat (limited to 'searx_extra/update/update_ahmia_blacklist.py')
-rwxr-xr-xsearx_extra/update/update_ahmia_blacklist.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/searx_extra/update/update_ahmia_blacklist.py b/searx_extra/update/update_ahmia_blacklist.py
new file mode 100755
index 000000000..f645880e6
--- /dev/null
+++ b/searx_extra/update/update_ahmia_blacklist.py
@@ -0,0 +1,30 @@
+#!/usr/bin/env python
+
+# This script saves Ahmia's blacklist for onion sites.
+# More info in https://ahmia.fi/blacklist/
+
+# set path
+from os.path import join
+
+import requests
+from searx import searx_dir
+
+URL = 'https://ahmia.fi/blacklist/banned/'
+
+
+def fetch_ahmia_blacklist():
+ resp = requests.get(URL, timeout=3.0)
+ if resp.status_code != 200:
+ raise Exception("Error fetching Ahmia blacklist, HTTP code " + resp.status_code)
+ else:
+ blacklist = resp.text.split()
+ return blacklist
+
+
+def get_ahmia_blacklist_filename():
+ return join(join(searx_dir, "data"), "ahmia_blacklist.txt")
+
+
+blacklist = fetch_ahmia_blacklist()
+with open(get_ahmia_blacklist_filename(), "w") as f:
+ f.write('\n'.join(blacklist))