from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker from scrapy.conf import settings from utils.Singleton import Singleton class Connector(metaclass=Singleton): __connection = None __engine = create_engine(settings['CONNECTION_STRING']) __Session = sessionmaker(bind=__engine) @staticmethod def get_session(): return Connector.__Session() @staticmethod def get_connection(): if not Connector.__connection: Connector.__connection = Connector.__engine.connect() return Connector.__connection