From 98de035a0cc5272772bca3f5f9489fae26fff88e Mon Sep 17 00:00:00 2001 From: Alexandre Dulaunoy Date: Wed, 15 Sep 2021 21:37:41 +0200 Subject: [PATCH] new: [lookup] basic version of lookup --- bin/lookup.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 bin/lookup.py diff --git a/bin/lookup.py b/bin/lookup.py new file mode 100644 index 0000000..0a3162d --- /dev/null +++ b/bin/lookup.py @@ -0,0 +1,31 @@ +import redis +import argparse +import sys + +rdb = redis.Redis(host='127.0.0.1', port=6379, db=8, decode_responses=True) + +parser = argparse.ArgumentParser(description='Find potential CPE names from a list of keyword') +parser.add_argument('--word', help='One or more keyword(s) to lookup', action='append') +args = parser.parse_args() + +if args.word is None: + print("Missing keyword(s)") + parser.print_help() + sys.exit(1) + +k=[] +for keyword in args.word: + k.append('w:{}'.format(keyword.lower())) + +maxinter = len(k) +cpes = [] +for x in reversed(range(maxinter)): + ret = rdb.sinter(k[x]) + cpes.append(list(ret)) + + +result = set(cpes[0]).intersection(*cpes) +print(result) + +#for cpe in result: +# rdb.zrank