summaryrefslogtreecommitdiff
path: root/searx_extra/update/update_ahmia_blacklist.py
blob: f645880e6e4f743a4ef2f77139e0218fdc48144d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
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))