import pandas as pd | |
import sqlite3 | |
import csv | |
def get_delimiter(file_path, bytes = 4096): | |
sniffer = csv.Sniffer() | |
data = open(file_path, "r").read(bytes) | |
delimiter = sniffer.sniff(data).delimiter | |
return delimiter | |
def process_data_upload(data_file, session_hash): | |
delimiter = get_delimiter(data_file) | |
df = pd.read_csv(data_file, sep=delimiter) | |
# Read each sheet and store data in a DataFrame | |
#data = df.parse(sheet_name) | |
# Process the data as needed | |
# ... | |
df.columns = df.columns.str.replace(' ', '_') | |
df.columns = df.columns.str.replace('/', '_') | |
for column in df.columns: | |
if "date" in column.lower() or "time" in column.lower(): | |
df[column] = pd.to_datetime(df[column]) | |
connection = sqlite3.connect(f'data_source_{session_hash}.db') | |
print("Opened database successfully"); | |
print(df.columns) | |
df.to_sql('data_source', connection, if_exists='replace', index = False) | |
connection.commit() | |
connection.close() |