48 lines
1.2 KiB
Python
Executable file
48 lines
1.2 KiB
Python
Executable file
#!/usr/bin/env python3
|
|
|
|
import database
|
|
import argparse
|
|
import sys
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
# Parsing arguments
|
|
parser = argparse.ArgumentParser(
|
|
description="TODO")
|
|
parser.add_argument(
|
|
'-o', '--output', type=argparse.FileType('w'), default=sys.stdout,
|
|
help="TODO")
|
|
parser.add_argument(
|
|
'-f', '--first-party', action='store_true',
|
|
help="TODO")
|
|
parser.add_argument(
|
|
'-e', '--end-chain', action='store_true',
|
|
help="TODO")
|
|
parser.add_argument(
|
|
'-x', '--explain', action='store_true',
|
|
help="TODO")
|
|
parser.add_argument(
|
|
'-r', '--rules', action='store_true',
|
|
help="TODO")
|
|
parser.add_argument(
|
|
'-c', '--count', action='store_true',
|
|
help="TODO")
|
|
args = parser.parse_args()
|
|
|
|
DB = database.Database()
|
|
|
|
if args.rules:
|
|
if not args.count:
|
|
raise NotImplementedError
|
|
print(DB.count_rules(first_party_only=args.first_party))
|
|
else:
|
|
if args.count:
|
|
raise NotImplementedError
|
|
for domain in DB.export(
|
|
first_party_only=args.first_party,
|
|
end_chain_only=args.end_chain,
|
|
explain=args.explain,
|
|
):
|
|
print(domain, file=args.output)
|