Files
Lottery_Project/lottery_predictor/collect.py
T
2026-03-05 10:49:01 -05:00

30 lines
997 B
Python

"""
collect.py
Functions for collecting data for insertion into the databse or pulling data from the database for analysis
"""
from datetime import datetime
from enum import Enum
from time import sleep
from sqlalchemy import func
from sqlalchemy.exc import IntegrityError
from data.database import Base, dal, MegaMillionsDraw, PowerballDraw, project_variables
import util.drawing as drawutil
import util.environment as envutil
import util.scrape as scrapeutil
project_variables = envutil.load_environment_variables()
def get_record_count(table_name: str) -> str | None:
"""get the most recent draw record from the specified table"""
if table_name in ['PowerballDraw', 'MegaMillionsDraw']:
dal.connect()
session = dal.Session()
target_table = Base.registry._class_registry.get(table_name)
return session.query(func.count(target_table.draw_date)).first()[0]
else:
raise ValueError('Valid values are PowerballDraw, MegaMillionsDraw')