159 lines
4.0 KiB
Python
159 lines
4.0 KiB
Python
import pandas as pd
|
|
from mappingsdict import mappings
|
|
from groupslist import GROUPSDICT
|
|
from datetime import date
|
|
import fnmatch
|
|
|
|
MAINLIST = mappings
|
|
DATE = date.today()
|
|
|
|
|
|
def oldfunc():
|
|
df = pd.DataFrame.from_records(mappings)
|
|
df.to_csv(f"~/Downloads/Anthology_mappings_{date}.csv")
|
|
|
|
|
|
def newfunc():
|
|
masterlist = []
|
|
for domdict in MAINLIST:
|
|
for domains in domdict["domains"]:
|
|
masterlist.append(domains)
|
|
nodupes = set(masterlist)
|
|
find_matches(nodupes)
|
|
|
|
|
|
def find_matches(nodupes):
|
|
formatted_mapping = []
|
|
for domain in nodupes:
|
|
domaindict = {}
|
|
group_list = []
|
|
for domdict in MAINLIST:
|
|
if domain in domdict["domains"]:
|
|
group_list.append(domdict["uuid"])
|
|
groups_names = {v: k for k, v in GROUPSDICT.items()}
|
|
groups_names = [groups_names.get(item, item) for item in group_list]
|
|
names = fnmatch.filter(groups_names, "*(??)")
|
|
domaindict = {"domain": domain, "groups": names}
|
|
formatted_mapping.append(domaindict)
|
|
to_file(formatted_mapping)
|
|
|
|
|
|
def to_file(formatted_mapping):
|
|
df = pd.DataFrame()
|
|
#df = pd.DataFrame(formatted_mapping)
|
|
df[[ "domain",
|
|
"groups_1",
|
|
"groups_2",
|
|
"groups_3",
|
|
"groups_4",
|
|
"groups_5",
|
|
"groups_6",
|
|
"groups_7",
|
|
"groups_8",
|
|
"groups_9",
|
|
"groups_10",
|
|
"groups_11",
|
|
"groups_12",
|
|
"groups_13",
|
|
"groups_14",
|
|
"groups_15",
|
|
"groups_16",
|
|
"groups_17",
|
|
"groups_18",
|
|
"groups_19",
|
|
"groups_20",
|
|
"groups_21",
|
|
"groups_22",
|
|
"groups_23",
|
|
"groups_24",
|
|
"groups_25",
|
|
"groups_26",
|
|
"groups_27",
|
|
"groups_28",
|
|
"groups_29",
|
|
"groups_30",
|
|
"groups_31",
|
|
"groups_32",
|
|
"groups_33",
|
|
"groups_34",
|
|
"groups_35",
|
|
"groups_36",
|
|
"groups_37",
|
|
"groups_38",
|
|
"groups_39",
|
|
"groups_40",
|
|
"groups_41",
|
|
"groups_42",
|
|
"groups_43",
|
|
"groups_44",
|
|
"groups_45",
|
|
"groups_46",
|
|
"groups_47",
|
|
"groups_48",
|
|
"groups_49",
|
|
"groups_50",
|
|
"groups_51",
|
|
"groups_52",
|
|
"groups_53",
|
|
"groups_54",
|
|
"groups_55",
|
|
"groups_56",
|
|
"groups_57",
|
|
"groups_58",
|
|
"groups_59",
|
|
"groups_60",
|
|
"groups_61",
|
|
"groups_62",
|
|
"groups_63",
|
|
"groups_64",
|
|
"groups_65",
|
|
"groups_66",
|
|
"groups_67",
|
|
"groups_68",
|
|
"groups_69",
|
|
"groups_70",
|
|
"groups_71",
|
|
"groups_72",
|
|
"groups_73",
|
|
"groups_74",
|
|
"groups_75",
|
|
"groups_76",
|
|
"groups_77",
|
|
"groups_78",
|
|
"groups_79",
|
|
"groups_80",
|
|
"groups_81",
|
|
"groups_82",
|
|
"groups_83",
|
|
"groups_84",
|
|
"groups_85",
|
|
"groups_86",
|
|
"groups_87",
|
|
"groups_88",
|
|
"groups_89",
|
|
"groups_90",
|
|
"groups_91",
|
|
"groups_92",
|
|
"groups_93",
|
|
"groups_94",
|
|
"groups_95",
|
|
"groups_96",
|
|
"groups_97",
|
|
"groups_98",
|
|
"groups_99",
|
|
"groups_100",
|
|
"groups_101",
|
|
"groups_114",
|
|
"groups_115",
|
|
"groups_116",
|
|
"groups_117",
|
|
"groups_118"]]
|
|
print(df)
|
|
# = pd.DataFrame(df.groups.tolist(), index=df.index)
|
|
# df3 = pd.DataFrame(df['domains'].to_list())
|
|
# df.to_csv(f"~/Downloads/Anthology_mappings_{DATE}.csv")
|
|
|
|
|
|
if __name__ == "__main__":
|
|
newfunc()
|