From 4a6d2e3809e4f7d76f633e59d14d1022de0f9cc6 Mon Sep 17 00:00:00 2001 From: "a.chernenko" Date: Sun, 30 Nov 2025 18:23:40 +1000 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=BE=D1=82=D1=80=D0=B8=D1=86=D0=B0?= =?UTF-8?q?=D0=BD=D0=B8=D1=8F,=20-RU,=20=D0=BF=D1=80=D0=B8=20=D1=83=D0=BA?= =?UTF-8?q?=D0=B0=D0=B7=D0=B0=D0=BD=D0=B8=D0=B5=20=D1=81=D0=BF=D0=B8=D1=81?= =?UTF-8?q?=D0=BA=D0=B0(=D0=BE=D0=B2)=20=D0=B2=D1=8B=D0=B3=D1=80=D1=83?= =?UTF-8?q?=D0=B7=D0=BA=D0=B8.=20=D0=A0=D0=B5=D0=B3=D0=B8=D1=81=D1=82?= =?UTF-8?q?=D1=80=D0=BE=D0=BD=D0=B5=D0=B7=D0=B0=D0=B2=D0=B8=D1=81=D0=B8?= =?UTF-8?q?=D0=BC=D1=8B=D0=B9=20=D0=BA=D0=BB=D1=8E=D1=87=20=D0=B2=D1=8B?= =?UTF-8?q?=D0=B7=D0=BE=D0=B2=D0=B0.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- download.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/download.py b/download.py index 1bd7907..81ee2e7 100755 --- a/download.py +++ b/download.py @@ -241,6 +241,13 @@ if __name__ == "__main__": # cловари для группировки ipv4_dict=dict() ipv6_dict=dict() + # словарь аргументов вызова + arg_dict = defaultdict(list) + for c in sys.argv[1:]: + key = "off" if c[0] == "-" else "on" + value = c[1:].upper() if c[0] == "-" else c.upper() + arg_dict[key].append(value) + arg_dict = dict(arg_dict) # создаем дерриктори. для сохранения outdir=os.path.join(os.path.dirname(os.path.realpath(__file__)), 'unloading') if not os.path.exists(outdir): @@ -259,7 +266,9 @@ if __name__ == "__main__": community=[c for c in value[0].get('community', "").split(",") if c] # если передан аргумент(ы) запуска, # значит пытаемся обновить только указанные списки - if len(sys.argv)==1 or clist in sys.argv[1:] or not f"-{clist}" in sys.argv[1:]: + if not arg_dict or \ + (len(arg_dict) == 2 and clist in arg_dict["on"] and not clist in arg_dict["off"]) or \ + (len(arg_dict) == 1 and (("on" in arg_dict and clist in arg_dict["on"]) or ("off" in arg_dict and not clist in arg_dict["off"]))): print("") # вычисляем кол-во записей прошлой выгрузки ipv4_count_old = sum(1 for line in open(ipv4_out_file)) if os.path.isfile(ipv4_out_file) else 0