From 7b5c8401079a41455872cefc4daa9e67e51c85c5 Mon Sep 17 00:00:00 2001 From: Kenneth Kehl <@kkehl@flexion.us> Date: Mon, 6 Jan 2025 13:10:13 -0800 Subject: [PATCH] code review feedback --- app/aws/s3.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/app/aws/s3.py b/app/aws/s3.py index 7ad471ed8..e736cdcb0 100644 --- a/app/aws/s3.py +++ b/app/aws/s3.py @@ -1,4 +1,6 @@ +import csv import datetime +from io import StringIO import re import time from concurrent.futures import ThreadPoolExecutor @@ -395,21 +397,19 @@ def get_job_from_s3(service_id, job_id): def extract_phones(job): - job = job.split("\r\n") - first_row = job[0] - job.pop(0) - first_row = first_row.split(",") + job_csv_data = StringIO(job) + csv_reader = csv.reader(job_csv_data) + first_row = next(csv_reader) + phone_index = 0 - for item in first_row: - # Note: may contain a BOM and look like \ufeffphone number + for i, item in enumerate(first_row): if item.lower().lstrip("\ufeff") == "phone number": + phone_index = i break - phone_index = phone_index + 1 phones = {} job_row = 0 - for row in job: - row = row.split(",") + for row in csv_reader: if phone_index >= len(row): phones[job_row] = "Unavailable"