now works with folders

This commit is contained in:
Owen Quinlan 2021-08-04 14:31:47 +10:00
parent dfdc15ab15
commit 93dc15f985
2 changed files with 17 additions and 6 deletions

1
.gitignore vendored
View file

@ -114,3 +114,4 @@ dmypy.json
.pyre/ .pyre/
toxic/ toxic/
.idea/ .idea/
fuck/

22
main.py
View file

@ -9,10 +9,22 @@ unique_old = []
def main(in_args): def main(in_args):
# reading CSV file
user_data = read_csv(in_args.csv_input)
discord_ids = user_data['AuthorID'].tolist()
if not os.path.isfile(in_args.csv_input):
for filename in os.listdir(in_args.csv_input):
file_path = os.path.join(in_args.csv_input, filename)
process(in_args, str(file_path))
else:
# reading CSV file
csv_path = in_args.csv_input
process(in_args, csv_path)
print("Done.")
def process(in_args, csv_path: str):
user_data = read_csv(csv_path)
discord_ids = user_data['AuthorID'].tolist()
# check if the output exists to add new IDs too # check if the output exists to add new IDs too
if os.path.isfile(in_args.csv_output) is False: if os.path.isfile(in_args.csv_output) is False:
write_csv(["User ID"], in_args.csv_output) write_csv(["User ID"], in_args.csv_output)
@ -20,20 +32,18 @@ def main(in_args):
old_data = read_csv(in_args.csv_output) old_data = read_csv(in_args.csv_output)
for x in old_data['User ID'].tolist(): for x in old_data['User ID'].tolist():
unique_old.append(int(x)) unique_old.append(int(x))
# check for new IDs # check for new IDs
for user_id in discord_ids: for user_id in discord_ids:
int_id = int(user_id) int_id = int(user_id)
print("User: ", str(int_id), end="\r", flush=True) print("User: ", str(int_id), end="\r", flush=True)
if user_id not in unique_ids and user_id not in unique_old: if user_id not in unique_ids and user_id not in unique_old:
unique_ids.append(user_id) unique_ids.append(user_id)
# add users to the CSV # add users to the CSV
for user_id in unique_ids: for user_id in unique_ids:
print("User: ", str(user_id), end="\r", flush=True) print("User: ", str(user_id), end="\r", flush=True)
update_csv(user_id, in_args.csv_output) update_csv(user_id, in_args.csv_output)
print("Done.") unique_ids.clear()
def write_csv(fields, csv_path): def write_csv(fields, csv_path):