Selvfølgelig kan du gøre det med SQLAlchemy.
Alt du skal gøre er at oprette forskellige forbindelsesmotorer, hver med deres egen sessionsmaker. Intet i SQLAlchemy begrænser dig til kun én database ad gangen.
engines = []
sessions = []
for dbconninfo in databases:
engine = create_engine(dbconninfo)
engines.append(engine)
sessions.append(sessionmaker(bind=engine)())
Du kan bruge hver session til at køre forespørgsler, resultatobjekter er knyttet til den session, der producerede dem, så ændringer flyder tilbage til den korrekte database. Læs sessionsdokumentationen i detaljer for at se, hvad der sker, hvis du f.eks. flette et objekt fra en session til en anden.