aboutsummaryrefslogtreecommitdiffstats
path: root/obfuscator/csv_reader.py
blob: 901d396f8ba679bd48e493bc68e8afb1115dcf85 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import csv
from typing import List, Dict
from obfuscator.logger import get_logger

logger = get_logger("CSVReader")

class CSVReader:
    def __init__(self):
        pass

    def read_local(self, path) -> List[Dict[str, str]]:
        logger.debug(f"Reading local CSV from: {path}")
        data = []

        try:
            with open(path, mode="r", encoding="utf-8") as file:
                reader = csv.DictReader(file)
                for row in reader:
                    data.append(dict(row))
        except FileNotFoundError:
            logger.error(f"File not found: {path}")
        except Exception as e:
            logger.error(f"Error reading file: {e}")

        logger.debug(f"Total rows read: {len(data)}")
        return data

    def read_s3(self) -> List[Dict[str, str]]:
        return []
git.ajschof.me — hosted by ajschofield — powered by cgit